Подтвердить что ты не робот

Руководство пользователя ANSI SQL

Можно ли рекомендовать хорошее справочное руководство по ANSI SQL?

Я не нуждаюсь в значении учебника, но в качестве справочного документа для поиска, когда вам нужно либо базовое, либо более подробное объяснение или пример.

В настоящее время я использую Учебное пособие по W3Schools SQL и Учебник по SQL, которые в порядке, но я не нахожу их "глубокими".

Конечно, у каждого крупного производителя РСУБД будут какие-то справочные руководства, ориентированные на их собственный продукт, но они, как правило, предвзяты и когда-нибудь будут использовать проприетарные расширения.

EDITED: Цель вопроса состояла в том, чтобы сосредоточиться на том, что у двигателей баз данных есть общие корни SQL. Но понимание различий также может быть положительным - это довольно интересно.

4b9b3361

Ответ 1

Здесь "Второй неофициальный обзорный проект SQL: 1992, который, кажется, был достаточно точным для всего, что я искал. 1992 охватывает большинство материалов, которые обычно используются в СУБД.

Ответ 2

SQL не похож на C или Java, где есть стандарт для языка, а затем ряд компаний и организаций внедряют язык как можно лучше, следуя стандарту.

Вместо этого основные базы данных поступали до стандарта SQL, а стандарт - это своего рода компромисс, когда каждый разработчик базы данных хотел получить свой конкретный диалект и функции в стандарте.

Следовательно, существует гораздо больше разнообразия между базами данных, чем между типичными компиляторами языка программирования, и для использования базы данных вам действительно нужно знать этот конкретный диалект SQL.

Сказав это, у меня есть Gultzan и Peltzer SQL-99 Complete, Really здесь, в моей книжной полке. Это хорошая книга, если вам нужно знать, что действительно содержит стандарт. (И да, есть новая версия с SQL-99, но никто, похоже, не заботится.)

EDIT: На самом деле существует не только одна более новая версия с SQL-99, но три: SQL: 2003, SQL: 2006 и SQL: 2008. И все равно никто, похоже, не заботится. На самом деле, многие даже не заботятся о SQL-99, поэтому SQL-92 по-прежнему, в некотором смысле, "стандарт".

Ответ 3

Все документы ANSI могут быть приобретены - вы предположили, что это ANSI.

http://webstore.ansi.org/

Ответ 4

Основная проблема с справочным руководством ANSI SQL заключается в том, что вы не можете найти базу данных, которая ее реализует. И когда это произойдет, вы обнаружите, что ANSI SQL не может решить некоторые из ежедневных проблем. Вот почему все профессиональные базы данных определяют расширения.

Поэтому на работе вам понадобится справочное руководство по конкретной версии используемой вами базы данных.

Ответ 5

Это напоминает мне мой 2-й курс университета, где мы изучаем реляционную теорию вместо SQL.

Прочтите хорошую книгу о реляционной теории. Теория и практика базы данных развивались с тех пор, как Эдгар Кодд изначально определил реляционную модель еще в 1969 году. Независимо от любых продуктов SQL, SQL и Relational Theory опирается на десятилетия исследований, чтобы представить самую современную обработку материалов, доступных в любом месте. Любой, кто имеет скромный и продвинутый фон в SQL, получит много преимуществ в этой книге.

alt text

Oreilly Январь 2009

Ответ 6

Я нашел, что лучший способ изучить SQL - это фактически получить письменные запросы и понять природу соединений/условных выражений и т.д. Я нашел эту ссылку с большим количеством примеров DIY лучшим: http://sqlzoo.net/

Ответ 7

Мне очень нравится почти все, что сделал Джо Селко Книги Celko

Ответ 9

Ресурсы DevGuru всегда работали хорошо для меня: http://www.devguru.com/technologies/t-sql/home.asp

Хотя я должен признать, что это не совсем "ориентированный на ANSI" ресурс. Я всегда был центром MS SQL, и это было полезно для меня, когда я начинал. ИМХО. Лучше всего использовать несколько ресурсов, в том числе, по крайней мере, одну из каждой платформы БД, которую вы хотите использовать.

Чтобы вставить вкладку DevGuru для своего ресурса T-SQL:

Хотя существуют стандарты для SQL, таких как ANSI SQL92 и SQL99, большинство базы данных используют свой собственный диалект и/или Extentions. Microsoft аромат SQL используется в SQL Server 7 и SQL Server 2000 называется T-SQL. Хотя многие из примеры в этой быстрой ссылке может работать с другими базами данных, это предположил, что SQL Server 2000 используется, особенно для расширенных тем, таких как хранимые процедуры.