Ответ 1
Найдите сложные вопросы, которые проверяют ваши знания TRANSACT-SQL... лично мне нравится Joe Celko SQL Puzzles and Answers.
Как разработчики SQL продолжают поддерживать текущие методы и тенденции в мире SQL? Существуют ли какие-либо блоги, книги, статьи, методы и т.д., Которые используются для обновления и понимания?
Есть много возможностей для OO, процедурных и функциональных программистов для участия во множестве проектов с открытым исходным кодом, но мне кажется, что проспект FOSS немного более закрыт для разработчиков SQL.
Мысли?
Найдите сложные вопросы, которые проверяют ваши знания TRANSACT-SQL... лично мне нравится Joe Celko SQL Puzzles and Answers.
Дело о языке SQL заключается в том, что это довольно статическая цель. Довольно скоро вы смотрите на увеличение своего понимания теории множеств и самой предметной области, а не деталей языка.
Реальное мясо находится по обе стороны от языка, либо в самих базах данных (как хранить, извлекать и организовывать большие наборы данных), так и в приложениях (с ORM и т.д.)
Я просмотрел ответы и, видимо, никто не упомянул о работе Стефана Фарута.
Я настоятельно рекомендую вам рассмотреть "Искусство SQL" (http://www.amazon.com/Art-SQL-Stephane-Faroult/dp/0596008945), я нашел, что это действительно интересно и - удивительно, даже интересно читать.
Как насчет http://sqlblog.com/
Я улучшаю анализ медленных и сложных запросов и ищет способы их улучшения. Это можно сделать в SQL Server, проанализировав инструменты Query Plan и найдя узкие места. Также я нахожу руководство по Visual Quickstart Guide, чтобы быть хорошим для быстрой справки.
Joe Celko SQL Puzzles and Answers и SQL для Smarties - это две лучшие общие книги SQL. Оба являются отличными источниками, чтобы дать вам идеи для этой сложной проблемы, с которой вы привыкли думать, что вам нужен курсор или какая-то клиентская библиотека. Для любого действительно заинтересованного разработчика SQL эти книги также довольно хороши для случайного чтения, а не как простое справочное руководство. Два больших пальца вверх.
В то время как я не эксперт SQL Server, в общем, я считаю, что события на основе сообщества - отличные способы удержать текущие шаблоны. Основным результатом участия в сообществе разработчиков /DBAs/Marketing Pros/insert профессии здесь является то, что вы изучаете новые шаблоны мышления и совершенствуете критическую мысль. Это отличный способ расти как любой профессионал.
В SQL отсутствуют текущие методы и тенденции. Там только тот материал, который вы уже должны знать, но нет. Правильный способ узнать это, это боль... столько боли.
Присоединитесь к списку рассылки для используемого вами колорита DB... или lurk on stackoverflow;)
Большинство "текущих" материалов - это не сам SQL, а то, как база данных хранит информацию и как ее быстрее получить. Посмотрите эту другую тему: Каковы некоторые рекомендации, уроки и рекомендации по оптимизации оптимизации SQL
Единственное реальное кровотечение - это планирование запросов, структуры индексов, алгоритмы сортировки, подобные вещи, а не сам SQL.
Тот факт, что вы задали этот вопрос, уже является хорошим знаком. Избежать самодовольства является "советом № 1". Не существует замены для написания и оптимизации SQL. Практическое использование - лучший способ оставаться острым, но существует риск сценария "лес для деревьев", где мы склонны использовать то, что удобно и знакомо. Попытка новой тактики, изучения новых подходов и поиска новых способов обучения наших мозгов думать о множествах, теории SQL, реляционной теории и оставаться на вершине новых разработок в конкретных диалектах, которые мы используем, - это все отличительные черты хороших разработчиков SQL.
В наши дни много хороших блогов. Я работаю в основном на арене Microsoft, поэтому мне нравится SQLTeam.com.
Usenet - хорошее место, чтобы пообщаться и внести свой вклад. Существует много групп новостей, связанных с SQL. Часто вы обнаружите, что работа над чужой проблемой помогает вам изучить новую тактику или заставить исследовать пыльный угол языка, с которым вы не сталкиваетесь каждый день. ISPs, похоже, суждено закрыть все Usenet вниз, хотя, из-за гнусного использования, так что это может идти по пути птицы Dodo.
Кроме того, некоторые IRC-серверы имеют яркие каналы sql, где вы можете сделать такую же разницу (просто возьмите с собой толстую кожу).
Наконец, этот веб-сайт может быть еще одним местом для зависания, где вы можете прочитать ответы на сложные вопросы, посмотреть, как это может применяться в вашем собственном мире, практиковать методы и интернализировать их. Также помогайте, потому что, видя, как другие голосуют ваши решения вверх или вниз, на 100% чистая честная обратная связь.
Конечно, есть много замечательных книг. Все, что Celko является победителем, и на стороне SQL Server, Кален Делани и Рон Сукуп написали несколько победителей.
Лучшая вещь, с которой я столкнулся, работает над кодом SQL других людей. Особенно унаследованный бизнес-код. Вы хотите проверить свои навыки против чего-то, начать менять какой-то "код вуду", который никто не понимает.:)
Помимо этого, я просто стараюсь следить за изменениями с новыми выпусками SQL и видеть, есть ли что-нибудь, что я могу использовать.
подсказки блеска при использовании phpmyadmin это приятно и многословно
Вот один из них с интересной информацией SSIS. http://blogs.conchango.com/jamiethomson/default.aspx
В Wiki также есть полезная информация: http://wiki.lessthandot.com/index.php/Main_Page
Для тех, кто говорит, что SQL никогда не меняется, SQL Server 2005 и 2008 имеют огромные изменения в T-SQl, которые помогут решить некоторые сложные проблемы, которые были ужасны в SQL Server 2000, и намного проще, когда вы изучите новый синтаксис, так что да есть вещи, которые не отстают.
Кроме того, настройка производительности и SSIS являются чрезвычайно сложными темами, которые нужно многому научиться.
Я обнаружил, что разработчики, которые предпочитают не учиться продвинутым навыкам SQL, склонны писать плохо исполняемый код SQL, и как только количество записей растет в их базах данных, приложения, которые они написали, как правило, становятся медленными и очень трудными для исправления точка. Сейчас я работаю с разработчиками, чтобы исправить плохой код, который они написали, что вызывает таймауты на сайте практически по каждому запросу. Очевидно, что это сейчас чрезвычайная ситуация, и было бы легко написать код более эффективно в начале, если у разработчика были лучшие навыки SQL.
Я никогда не слышал о термине "разработчик SQL". SQL должен быть умением в вашем наборе инструментов, например, сортировкой, любой структурой, которая вам нравится, JavaScript и т.д. Лучший способ продолжить улучшать свои навыки SQL, чтобы продолжать использовать его.
Как разработчик, а не администратор базы данных, я слежу за различными ресурсами разработчика, и это часто связано с БД, но я специально не пытаюсь идти в ногу с ним.
Я знаю много, но я также знаю, что есть намного больше, что нужно знать. И в каждом проекте мне нужно узнать что-то новое. И каждый проект также предполагает, что я использую другой подход к аналогичной задаче, с которой я столкнулся в прошлом.
Должен ли я когда-либо выйти на сцену, где я думаю, что я делаю то же самое все время, возможно, я приложу все усилия, чтобы предпринять конкретные шаги. Но в настоящее время, и в обозримом будущем я учусь органично, на работе, и, как диктуют мои проекты.
Чтение:
Книги - Celko (также читается в некоторых предвзятых Oracle) Блоги - выше, плюс SSWUG
Веб-семинары и конференции - лучший способ не отставать от конкретных продуктов, таких как SSIS/SSRS/SSAS
Практика:
Улучшение кода (мой и другие)
Рефакторинг
Наставничество/обучение других разработчиков
Честно говоря, это одна из тех вещей, с которой вы только со временем становитесь лучше. Прочитайте как можно больше, что возможно. Некоторым вещам понадобится время, чтобы действительно понять. Я был отпугнут подзапросами в течение долгого времени, пока у меня не было выбора, кроме как использовать их.
Когда вы получаете больше опыта и должны выполнять более сложные вещи, вы просто узнаете свой путь.
SqlServerCentral - отличный источник статей, скриптов, советов
К сожалению, для доступа к статьям, которые вам нужно зарегистрировать (это бесплатно, хотя)
Я думаю, что одна вещь, которую они могли бы изучить из StackOverflow, - это удалить барьер входа
Мы написали полный учебник, и вы можете проверить свои навыки SQL на отдельный сайт (также созданный нами мной, в интересах полной декларации).
SQL-разработчики или администраторы баз данных?
Помимо изучения различных диалектов SQL (Oracle, SQL Server и т.д.) в повседневной работе, SQL фактически не меняет ничего такого. Конечно, вы можете использовать более продвинутые концепции по мере развития своих навыков, разработки, где реализовать хранимые процедуры и т.д., Но в конце концов это просто SQL. Самое главное, чтобы ваша схема была правильной и поддерживаемой.
Теперь администрирование баз данных - это совсем другое дело, с набором инструментов, и программное обеспечение базы данных само по себе обновляется каждые несколько лет. У Oracle, по крайней мере, есть информационные бюллетени, веб-сайты и журналы, которые, по-видимому, содержат множество информации и примеров и примеров лучшей практики.
Честно говоря, я не вижу большой потребности в экстремальных навыках SQL. Как только я могу создавать транзакции (для согласованности БД) и базовые триггеры (для согласованности кросс-таблиц), я обычно прекрасно соблюдаю программную логику... в программе и не помещаю ее в любую базу данных, которую я использую. Я не нашел большой глубины для SQL, который стоит исследовать на протяжении всей жизни, в отличие от общего программирования, которое продолжает расширяться.