Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основы SQL




Операторы

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

 

Оператор Описание
Обработка данных  
SELECT Считывает данные из БД
INSERT Добавляет новые строки в БД
DELETE Удаляет строки из БД
UPDATE Обновляет данные, существующие в БД
Определение данных  
CREATE TABLE Создает в БД новую таблицу
DROP TABLE* Удаляет таблицу из БД
ALTER TABLE* Изменяет структуру существующей таблицы
CREATE VIEW Добавляет в БД новое представление
DROP VIEW* Удаляет представление из БД
CREATE INDEX* Создает индекс для столбца
DROP INDEX Удаляет индекс столбца
CREATE SYNONYM* Определяет синоним для имени таблицы
DROP SYNONYM* Удаляет синоним для имени таблицы
COMMENT* Определяет заметки для таблицы или столбца
LABEL* Определяет заголовок таблицы или столбца
Управление доступам  
GRANT Предоставляет пользователю право доступа
REVOKE Отменяет право доступа
Управление транзакциями
COMMIT Завершает текущую Транзакцию
ROLLBACK - Отменяет текущую транзакцию
Программный SQL  
DECLARE Определяет курсор для запроса
EXPLAIN* Описывает план доступа к данным для запроса
OPEN Открывает курсор для чтения результатов запроса
FETCH Считывает строку из результатов запроса
CLOSE Закрывает курсор
PREPARE* Подготавливает оператор SQL к динамическому выполнению
EXECUTET Динамически выполняет оператор SQL
DESCRIBE* Описывает подготовленный запрос
* He являются частью стандарта ANSI/ISO, но часто встречаются в наиболее распространенных СУБД

Каждый оператор SQL начинается с глагола, т.е. ключевого слова, описывающего действие, выполняемое оператором. Типичными глаголами являются create (создать), insert (добавить), delete (удалить) и commit (завершить). После глагола идет одно или несколько предложений. Предложение описывает данные, с которыми работает оператор, или содержит уточняющую информацию о действии, выполняемом оператором. Каждое предложение также начинается с ключевого слова, такого как where (где), from (откуда), into (куда) и having (имеющий). Одни предложения в операторе являются обязательным, а другие — нет. Конкретная структура и содержимое предложения могут изменяться. Многие предложения содержат имена таблиц или столбцов; некоторые из них могут содержать дополнительные ключевые слова, константы и выражения.

В стандарте ANSI/ISO определены ключевые слова, которые применяются в качестве глаголов и в предложениях операторов. В соответствии со стандартом, эти ключевые слова нельзя использовать для именования объектов базы данных, таких как таблицы, столбцы и пользователи. Во многих реализациях SQL этот запрет ослаблен, однако следует избегать использования ключевых слов в качестве имен таблиц и столбцов. В табл. 5.2 перечислены ключевые слова, входящие в стандарт SQLL Стандарт SQL2 расширяет этот список до 300 ключевых слов.

ADA CURRENT GO- OF SOME
ALL CURSOR GOTO ON SQL
AND DEC GRANT OPEN SQLCODE
ANY DECIMAL GROUP OPTION SQLERROR
AS DECLARE HAVING OR SUM
ASC DEFAULT IN ORDER TABLE
AUTHORIZATION DELETE INDICATOR PASCAL TO
AVG DESC INSERT PLI UNION
BEGIN DISTINCT INT PRECISION UNIQUE
BETWEEN DOUBLE INTEGER PRIMARY UPDATE
BY END INTO PRIVILEGES USER
С ESCAPE IS PROCEDURE VALUES
CHAR 3SXEC KEY PUBLIC VIEW
CHARACTER EXISTS LANGUAGE REAL WHENEVER
CH&CK FETCH LIKE REFERENCES WHERE
CLOSE FLOAT MAX ROLLBACK WITH
COBOL FOR MIN SCHEMA WORK
COMMIT FOREIGN MODULE SECTION  
CONTINUE FORTRAN NOT SELECT  
COUNT FOUND NULL SET.  
CREATE FROM NUMERIC SMALLINT  

Почти во всех реализациях SQL ключевые слова можно писать как прописными, так и строчными буквами. На практике быстрее набирать весь оператор строчными буквами.

Имена

У каждого объекта в базе данных есть уникальное имя. Имена используются в операторах SQL и указывают, над каким объектом базы данных оператор должен выполнить действие. В стандарте ANSI/ISO определено, что имена имеются у таблиц, столбцов и пользователей. Во многих реализациях SQL поддерживаются также дополнительные именованные объекты, такие как хранимые процедуры, именованные отношения "первичный ключ — внешний ключ" и формы для ввода данных.

В соответствии со стандартом ANSI/ISO,в SQL имена должны содержать от 1 до 18 символов, начинаться с буквы и не содержать пробелы или специальные символы пунктуации. В стандарте SQL2 максимальное число символов в имени увеличено до 128. На практике, однако, в различных СУБД разрешено использование в именах таблиц специальных символов, которые в различных базах данных могут быть разными. Поэтому для повышения переносимости лучше делать имена сравнительно короткими и избегать использования в них специальных символов.

Имена таблиц

Если в операторе указано имя таблицы, SQL предполагает, что происходит обращение к одной из ваших собственных таблиц (т.е. таблиц, которые создали вы). Имея соответствующее разрешение, можно обращаться к таблицам, владельцами которых являются другие пользователи, с помощью полного имени таблицы. Полное имя состоит из имени владельца таблицы и собственно ее имени, разделенных точкой. Например, полное имя таблицы birthdays, владельцем которой является пользователь по имени sam, имеет следующий вид:

SAM.BIRTHDAYS

Полное имя таблицы можно использовать вместо простого имени таблицы во всех операторах SQL.




Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 660; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.