Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД Access.doc
Скачиваний:
2
Добавлен:
01.08.2019
Размер:
131.58 Кб
Скачать

О структурированном языке запросов sql.

Структурированный язык запросов (Structured Query Language), так же известный как SQL, является языком запросов и программирования. Он может быть использован для доступа, обновления, удаления и добавления данных в базы данных. SQL также может быть использован для управления RDBMS (Relational DataBase Management System – система управления реляционной базой данных). Различные базы данных могут использовать близкие версии SQL, но обычно совместимые со стандартной ANSI SQL-92 реализацией SQL, обычно называемой ANSI SQL. Вы можете сгруппировать запросы SQL в две главные категории: DDL (data definition language – язык определения данных) и DML (data manipulation language – язык манипулирования данными). Выполнение любого запроса осуществляется SQL- программой которая автоматически создается в процессе конструирования

Оператор SELECT является ядром языка, он применяется для выборки полей из таблиц БД

FROM часть оператора служит для определения источников данных запроса

WHERE устанавливает условия отбора данных при выполнении запроса

Синтаксис SELECT:

SELECT [all](список полей таблиц запросов);

FROM (список таблиц, на основе которых формируется запрос);

WHERE (условие отбора данных);

GROUP BY (условия для группировки данных в запросе);

HAVING (список полей, выводимых в результате выполнения запроса);

ORDER BY (список полей, по которым упорядочиваются поля данных в запросе).

Понятие транзакций

Простейшее определение транзакции выглядит так: Транзакция – это логическая единица работы. Другими словами – это группа операторов SQL, которые выполняют одну логическую задачу. Классический пример, который чаще всего используется для описания транзакции, это банковский перевод. Предположим, что у вас есть два счета в банке (счет А и счет В) и вы хотите перевести деньги с одного счета на другой. Если вы будете выполнять два оператора SQL независимо друг от друга (один из них будет удалять деньги со счета А и другой – добавлять деньги на счет В), то возникает вероятность того, что вы успешно выполните первый оператор (удалите деньги со счета), но, по каким-то причинам не сможете выполнить второй (зачисление денег на счет). В реальной жизни это будет означать, что кому-то из клиентов банка сильно не повезет. Для разрешения данной проблемы мы можем сгруппировать данные операторы в транзакцию. Если операторы объединены в транзакцию, то либо они все успешно завершаются и транзакция являются «завершенной», либо, если один из операторов вызовет сбой, они все «возвращаются на исходные позиции» и все данные остаются в состоянии, которое у них было до начала транзакции.