обеспечения является база данных Oracle; в качестве других примеров
можно назвать SQL Server, DB2 и MySQL.
Разумеется, каждая база данных должна предоставлять возможности
для ввода и вывода данных, желательно, при помощи общего языка, понятного
для всех баз данных. В системах управления базами данных реализован
стандартный язык, известный как язык структурированных запросов
(Structured Query Language, или сокращённо SQL). Среди прочего, SQL
позволяет вам получать информацию, а также добавлять, модифицировать
и удалять информацию из базы данных.
Знакомство с языком структурированных запросов (SQL)
Язык структурированных запросов (SQL) является стандартным языком,
разработанным для доступа к реляционным базам данных. Слово SQL следует
произносить по буквам: “S-Q-L’.
Примечание Согласно правилам Национального института стандартизации США (American
National Standard Institute - ANSI) аббревиатуру SQL следует правильно произносить как "S-Q-L”
(«Эс-Кью-Эл»). Однако часто вместо этого произносят одно слово «сикьюел» (sequel).
SQL основан на фундаментальной работе доктора Е. Ф. Код да, а первая
реализация SQL была подготовлена компанией IBM в середине 1970-х годов.
Компания IBM в то время осуществляла исследовательский проект,
известный как System R, и SQL возник в рамках этого проекта. Позднее,
в 1979 г., компания, которая в то время называлась Relational Software Inc.
(и которая сегодня известна как корпорация Oracle), выпустила первую
коммерческую версию SQL. Сегодня SQL полностью стандартизован
и признается Национальным институтом стандартизации США.
В SQL используется очень простой синтаксис, которому легко научиться
и который просто использовать. В этой главе будет приведено несколько
простых примеров по его применению. Существует пять типов операторов
SQL, которые перечислены ниже.
■ Операторы для запросов выбирают строки, хранящиеся в таблицах
базы данных. Для записи запроса используется SQL выражение SELECT.
■ Операторы языка манипулирования данными (Data Manipulation
Language, DML) изменяют содержимое таблиц. Существует три типа
операторов DML:
■ I N S ERT до б авл яе т с т р о к и в таблицу;
■ UPDATE и зм е н я е т стр о ки ;
■ DELETE удаляет с тр о к и .
■ Операторы языка определения данных (Data Definition Language,
DDL) определяют структуры данных, такие как таблицы, из которых состоит
база данных. Существует пять основных типов операторов DDL.
■ CREATE создает структуру базы данных. Например, CREATE TABLE используется
для создания таблицы; оператор CREATE USER используется
для создания пользователя базы данных.
4 Глава 1
■ ALTER изменяет структуру базы данных. Для изменения таблицы
используется ALTER TABLE.
■ DROP удаляет структуру базы данных. Например, для удаления таблицы
используется DROP TABLE.
■ RENAME и зм е н я е т и м я т аб ли цы .
■ TRUNCATE удаляет все с т р о к и та б ли цы .
■ Операторы управления транзакциями (Transaction Control, ТС)
либо записывают внесенные в строки таблицы изменения для их
постоянного хранения в базе данных, либо отменяют сделанные изменения.
Существует три оператора управления транзакциями.
■ COMMIT записывает внесенные в строки изменения для постоянного
хранения в базе данных.
■ ROLLBACK о тм е н я е т в н е с е н ны е в с т р о к и и зм е н е н и я .
■ SAVEPOINT устанавливает контрольную точку (save point), до которой
Вы можете выполнить откат изменений, внесенных в строки.
■ Операторы языка управления данными (Data Control Language,
DCL) изменяют права на использование структур базы данных. Существует
два оператора управления данными.
■ GRANT предоставляет другому пользователю доступ к Вашим структурам
базы данных.
■ REVOKE запрещает доступ другому пользователю к Вашим структурам
базы данных.
Существует много способов выполнения операторов SQL и получения
результатов из базы данных, к их числу относится выполнение программ,
написанных с применением Oracle Forms и Oracle Reports. Операторы
SQL также могут быть встроены в программы, написанные на других языках,
например, Oracle Рго*С++, которые позволяют встраивать операторы
SQL в программы, написанные на языке программирования C++. Вы можете
также добавлять операторы SQL в программы, написанные на языке
Java, используя для этого JDBC. Подробности можно найти в моей книге
«Программирование JDBG для 0racle9i” (Oracle9i JDBC Programming, Oracle
Press, 2002).
Кроме того, у Oracle есть инструментальное средство SQDPlus, которое