|
Программирование >> Руководство по sql
ТРЕТЬЕ ИЗДАНИЕ Третье издание преследует другую цель. В нем мы описываем основные команды языка SQL, включая расширения стандарта SQL-92, принятые большинством поставщиков СУБД. Они включают новые типы данных, модификации оператора CREATE TABLE, позволяющие контролировать целостность, измененные предложения ORDER BY и GROUP BY, а также новый синтаксис команд GRANT и REVOKE. Мы опишем синтаксис самых общих команд Sybase SQL Server, Sybase Anywhere, Microsoft SQL Server, Informix и Oracle. Bee примеры из этой книги, если специально не оговорено обратное, гарантированно работают как на Sybase SQL Server, так и на Sybase Anywhere. Третье издание Практического руководства по SQL - это больше, чем просто книга. На прилагаемом компакт-диске содержится рабочая версия Sybase Anywhere вместе с базой данных bookbiz. Это означает, что все примеры из этой книги вы можете выполнить на своем ПК. Успешно изучить SQL можно только на практике. Теперь вы можете экспериментировать, запуская на выполнение примеры из книги и наблюдая за получаемыми результатами. Если какой-то пример покажется вам слишком сложным, разбивайте его исходный код на отдельные части и запускайте их по отдельности, пока точно не уясните, что делает каждая из них. Затем снова соберите их вместе и наслаждайтесь полученными результатами! БЛАГОДАРНОСТИ Мы выражаем искреннюю благодарность людям, внесшим свой вклад в создание этой книги: Донне Джекер (Donna Jeker) и Сту Шустер (Stu Schuster) за постоянную помощь и поддержку. Джефу Личтману (Jeff Lichtman) и Говарду Торфу (Howard Torf) за советы, примеры, анекдоты и исправление ошибок. Тому Бонду (Тот Bondur), Сюзи Боуман (Susie Bowman), Джону Куперу (John Cooper) и Вайн Дюкюсне (Wayne Duquesne) за предоставленные материалы и информацию. Полу Винсбергу (Paul Winsberg) за главу с обзором структур баз данных, вошедшую в первое издание. Роберту Гарвею (Robert Garvey) за редактирование второго издания. Карен Эли (Karen Ali) за работу над компакт-диском. Тео Посселту (Тео Posselt) за редактирование третьего издания. Введение НАЧАЛА SQL Вначале была IBM, и IBM создала SQL. SQL - сокращение от Structured Query Language (Язык структурированных запросов) - это универсальный язык для создания, модификации и управления данными в реляционных базах данных. Реляционная модель была предложена в 1970 году И.Ф. Кодцом (E.F. Codd), работавшим в исследовательской лаборатории IBM в Сан-Хосе, Калифорния, и развивалась последующие десять лет в университетах и научных организациях. SQL - один из нескольких языков, выросших из этой идеи, в настоящее время практически полностью господствует в мире реляционных баз данных. Производители систем управления реляционными базами данных, первоначально использовавшие другие языки, сегодня полностью переориентировались на SQL. В этот период (1970-1980) коммерческому успеху систем управления реляционными базами данных препятствовала их невысокая производительность. Преимущества реляционных моделей - математическая строгость и интуитивная простота - в ранних системах нивелировались сложностью, а иногда просто невозможностью управления большими базами данных. Ситуацию изменили два фактора - появление более мощных компьютеров и разработка новых методов хранения и доступа к данным. В 1981 году IBM объявила о своем первом, основанном на SQL, программном продукте, SQL/DS. В начале 80-х годов о создании собственных реляционных СУБД заявили компании Oracle, Relational Technology и ряд других поставщиков. К 1989 году насчитывалось более 25 SQL-подобных СУБД, работающих на самых разных компьютерах, - от однопользовательских микрокомпьютеров до машин с сотнями пользователей. Сегодня SQL широко применяется в коммерческих, государственных и общественных организациях для работы с базами данных, содержащими самую различную информацию. Появление высококонкурентного рынка реляционных СУБД было обусловлено созданием целого ряда SQL-приложений, в которых воплотились годы работы по созданию полного и выразительного языка для реляционных моделей. Но проблема остается. Количество диалектов SQL сегодня равно количеству имеющихся на рынке СУБД. И хотя во всех диалектах без труда узнается SQL, все они отличаются друг от друга синтаксисом и семантикой. Более того, многие поставщики постоянно расширяют свои версии SQL, внося этим дополнительную путаницу. SQL продолжает развиваться - частично из-за того, что его исходная структура не удовлетворяет требованиям некоторых предметных областей, а частично из-за того, что производители СУБД стремятся выжать максимум возможностей из самой реляционной модели. Гибкость и простота расширения SQL позволяет ему удовлетворять все текущие требования рынка. Коммерциализация SQL Первые коммерческие реализации SQL имели тот же налет экспериментальности, что и версии, разрабатываемые в университетах и исследовательских лабораториях. Это во многом было связано с отсутствием в то время каких-либо общепринятых стандартов SQL. Сегодня версии Oracle, SQL/DS и DB2 существенно отличаются от своих родителей. Кроме того, коммерческие реализации по-прежнему отличаются друг от друга во многих отношениях и не полностью соответствуют стандарту ANSI SQL (как выпущенному в 1983 году, так и расширенному в 1992 году). Ситуация еще более усугубляется из-за появления на рынке сложных диалектов SQL. К счастью, идеи стандартизации и соответствующие тенденции развития рынка программного обеспечения заставляют производителей выпускать коммерческие версии, совместимые с версиями конкурентов. Такое взаимное схождение объясняется двумя причинами. Во-первых, компании стараются предлагать своим потенциальным клиентам системы с аналогичными списками функций и возможных расширений. Во-вторых, они постоянно стремятся привлечь к себе внимание пользователей других реляционных систем и поэтому вынуждены уменьшать стоимость перехода с их SQL-систем на свои. Таким образом, коммерческие интересы заставляют производителей создавать совместимые системы и добавлять новые возможности, чтобы при этом обеспечивалась совместимость с предыдущими версиями. Эта книга (и прилагаемый компакт-диск с версией Sybase Anywhere) помогут вам самостоятельно изучить основы SQL. Полученные знания вы сможете затем применить для освоения других диалектов SQL. Разобравшись в основах SQL, вы с легкостью сможете переходить на его различные версии. ДЛЯ кого ПРЕДНАЗНАЧЕНА ЭТА КНИГА Книга Практическое руководство по SQL предназначена для пользователей реляционных баз данных - независимо от того, работают ли они на больших многопользовательских компьютерных системах или на персональных компьютерах. Мы не считаем вас компьютерным профессионалом - вы можете быть конечным пользователем в большой компании, государственном учреждении, некоммерческой компании, мелким бизнесменом, менеджером в небольшой организации, домашним пользователем, работающим над собственным проектом, или студентом, изучающим технологии баз данных. Вы могли перейти на реляционные системы баз данных с обычного диспетчера файлов ПК, с другой системы управления базами данных, не основанной на SQL, либо вообще можете их видеть в первый раз. Мы надеемся, что вы имеете небольшой опыт работы с компьютером и программным обеспечением. Конечно, было бы полезно, если бы вы имели начальные представления и о базах данных. Если вы планируете разрабатывать сложные приложения для баз данных, вам, возможно, потребуется встраивать команды SQL в профаммы на других языках профаммирования или использовать так называемые языки приложений четвертого поколения (4GL). Однако для успешного изучения основ SQL и освоения более сложных тем с помощью книги Практическое руководство по SQL вовсе не требуется, чтобы когда-нибудь вами была написана хотя бы одна строка про-фаммного кода. Мы не предназначаем эту книгу для теоретиков, полагая, что тонкости реляционной теории и дебаты ISO-ANSI по поводу стандартов SQL не являются основными интересами наших читателей. Мы считаем, что вы находитесь в стороне от полемики об SQL - по крайней мере, по поводу его основных структур - и готовы к его использованию. Короче говоря, мы предполагаем: вы хотите узнать, что и как действительно работает или, по крайней мере, получить об этом минимальные представления. Эта книга посфоена так, чтобы поэтапно научить вас использовать SQL - вы вводите команду и немедленно получаете ее результат на экране, а не занимаетесь разработкой каких-то сложных профамм. Любая коммерческая версия SQL содержит диалоговый интерфейс, который помогает освоить основы языка и позволяет создавать запросы любой сложности. Многие версии предлагают генераторы отчетов или 40Е-языки, которые могут использоваться совместно с командами SQL для построения сложных приложений. ЦЕЛЬ ЭТОЙ КНИГИ Исходя из вышесказанного, мы акцентируем ваше внимание на реальном мире коммерческих реализаций SQL, которые мы также будем называть промышленными SQL , а не на текущих стандартных ANSI-версиях SQL. Мы делаем это потому, что промышленные версии SQL включают в себя удобные средства обучения, хорошо документированы и обладают большими функциональными возможностями.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |