Благодарю автора за ответственное отношение к выполнению заказа.
Подробнее о работе
Гарантия сервиса Автор24
Уникальность не ниже 50%
Введение 2
1. История развития SQL 3
2. Язык структурированных запросов SQL 5
2.1 Таблицы SQL 6
2.2 Структура языка SQL 7
2.3 Структура запросов SQL 8
2.3 Оператор SELECT 10
2.4 Операторы модификации данных 20
2.4.1 Оператор INSERT 20
2.4.2 Оператор UPDATE 25
2.4.3 Оператор DELETE 27
2.5 Транзакции в SQL 28
2.6 Защита данных 30
2.7 Обработка ошибок 32
Заключение 34
Список использованных источников 36
Приложение А 37
4 Дейт К.Дж. Введение в системы баз данных. 6 изд.- М.: Вильямс. 2000. – 317с.
5 Джоунс Э., Стивенз Р. К., Плюю Р. Р., Гарретт, Кригель А.. Функции SQL. Справочник программиста. - М.: Диалектика. 2006. 768 с.
6 Когаловский М.Р. Энциклопедия технологий баз данных. – М.: Финансы и статистика, 2002. – 800 с.
7 Леонтьев В.П. ПК: универсальный справочник пользователя - М.:2003. – 251с.
8 Материалы сайта http://www.sql-ex.ru/help.
9 Уилтон П., Колби Д. Язык запросов SQL для начинающих. - М.: Диалектика. 2006. 496 с.
10 Фаронов В.В. Основы программирования в SQL. - М.: Издатель Молгачева С.В., 2002. – 329 с.
Приложение А
Схема БД Компьютерная фирма состоит из четырех отношений:
1) Product(maker, model, type);
2) PC(code, model, speed, ram, hd, cd, price);
3) Laptop(code, model, speed, ram, hd, screen, price);
4) Printer(code, model, color, type, price).
...
1. История развития SQL
Язык для взаимодействия с базами данных SQL появился еще в середине семидесятых годов ХХ столетия, и был разработан в рамках проекта экспериментальной реляционной СУБД System R. Изначально данный язык назывался SEQUEL (Structured English Query Language). И данной название не совсем полностью передает суть этого языка. Главной целью разработки данного языка являлась удобная и понятная пользователям формулировка запросов к реляционной базе данных, но в действительности уже являлся полным языком баз данных, который содержал не только операторы формулирования запросов и манипулирования базой данных, но также и средства определения и манипулирования схемой базы данных. Однако в языке не был предусмотрен механизм синхронизации доступа к объектам базы данных со стороны параллельно выполняемых транзакций, т.к. с самого начала предполагалось, что всю требуемую синхронизацию в неявной форме выполняет система управления базами данных (СУБД).
...
2.3 Структура запросов SQL
В синтаксических конструкциях запросов SQL приняты следующие обозначения:
1) звездочка (*) – обозначает "все" – употребляется в обычном для программирования смысле, т.е. "все случаи, которые удовлетворяют заданному определению";
2) квадратные скобки ([]) – конструкции, которые заключены в эти скобки, являются необязательными (т.е. могут быть опущены);
3) фигурные скобки ({}) – конструкции, которые заключены в такие скобки, рассматриваются как цельные синтаксические единицы. То есть эти скобки применяются для уточнения порядка разбора синтаксических конструкций, заменяя таким образом обычные скобки, используемые в синтаксисе SQL;
4) многоточие (…) – указывает на то, что синтаксическая единица, которая предшествует многоточию, может быть повторенной несколько раз;
5) прямая черта (|) – означает возможность выбора какого-либо параметра из нескольких возможных.
...
2.3 Оператор SELECT
Для получения практически любых данных любого количества таблиц базы данных используется оператор запроса SELECT.
Этот оператор выбирает записи из базы данных и имеет самую сложную структуру, по сравнению с другими операторами языка SQL. Простейший запрос, с использованием оператора SELECT выглядит следующим обрезом:
SELECT * FROM PC; (1)
Запрос 1 осуществляет выборку всех записей из объекта БД табличного типа (таблицы) с именем PC. Результат выполнения запроса представлен на рисунке 2.
Рис. 2 — Результат выполнения запроса (1)
Следует обратить внимание, что столбцы и строки результирующей таблицы не упорядочены, то есть идут в порядке, в котором были созданы. Для того, чтобы изменить порядок столбцов в результирующем наборе, необходимо перечислить их названия через запятую в нужном порядке после слова SELECT (результат на рисунке 3):
SELECT price, speed, hd, ram, cd, model, code FROM Pc; (2)
Рис.
...
2.4.1 Оператор INSERT
Назначение оператора INSERT – вставка новых строк в таблицу базы данных. При этом значения, которые необходимо вставить в поля таблицы, могут быть как прописанными заранее константы, так и являться результатом выполнения подзапроса (вложенного запроса). В первом варианте для каждой строки данных формируется отдельное предложение оператора INSERT, а во втором – в таблицу будет добавлено столько строк, сколько возвратит подзапрос.
Общий синтаксис оператора:
INSERT INTO <имя таблицы>[(<имя столбца>,...)]
{VALUES (< значение столбца>,…)}
| <выражение запроса>
| {DEFAULT VALUES};
Как видно из общего синтаксиса оператора, список столбцов – не обязательный параметр. Тогда, в случае отсутствия списка столбцов, список добавляемых значений должен быть полным, то есть должен включать в себя значения для каждого столбца изменяемой таблицы БД.
...
2.4.2 Оператор UPDATE
Оператор UPDATE предназначен для изменения имеющихся данных в таблице. Общий синтаксис команды:
UPDATE
SET {имя столбца = {выражение для вычисления значения столбца
| NULL
| DEFAULT},...}
[ {WHERE }];
В отличие от оператора INSERT оператор UPDATE позволяет работать с несколькими столбцами любого количества таблиц. Однако, в одном и том же предложении оператора UPDATE можно вносить изменения в каждый столбец указанной таблицы только один раз. Также следует отметить, что при использовании UPDATE без предложения WHERE обновятся сразу все строки таблицы.
Если столбец допускает NULL-значение (пустое значение), то его можно указывать в явном виде. Кроме того, можно заменить имеющееся значение столбца на значение, присваиваемое по умолчанию (DEFAULT), для данного столбца.
Ссылка на "выражение для вычисления столбца" может относиться и к текущим значениям в изменяемой таблице.
...
2.4.3 Оператор DELETE
Оператор DELETE предназначен для удаления записей из таблицы базы данных. Оператор имеет достаточно простой синтаксис:
DELETE FROM <имя таблицы >
[WHERE <условие>];
В случае, если оператор WHERE опущен, то удаляются все записи из указанной таблицы.
Пусть, например, требуется удалить из таблицы Laptops все портативные компьютеры с размером экрана менее 12 дюймов. Эту задачу можно выполнить при помощи следующего запроса:
DELETE FROM Laptops WHERE screen < 12; (23)
Если же оператора WHERE не было, тогда удалились бы все записи из таблицы Laptops:
DELETE FROM Laptops; (24)
Оператор DELETE также позволяет использовать вложенные запросы. Пусть, например, необходимо удалить те подели ПК из таблицы Product, для которых нет соответствующих строк в таблице PC.
...
2.5 Транзакции в SQL
Под транзакцией понимается некоторая группа команд манипулирования с данными (добавление, изменение, удаление). Все изменения произведенные транзакциями, сохраняются в отдельной области памяти до окончательного подтверждения изменений (успешное завершение транзакции), либо до их отмены (откат транзакции). Если во время транзакции делается запрос на выборку данных, то создается отдельное представление. Основными функциями, которые выполняют транзакции в языке SQL, являются:
• атомарность - выполнение либо не выполнение сразу всех команд входящих в транзакцию;
• целостность БД - завершение транзакции не должно нарушать целостность БД;
• изоляция - можно отображать либо исходные данные, которые были до начала транзакции, либо новые данные после выполнения транзакции;
• сохранность данных - если пользователю пришло подтверждение выполнения транзакции, то его изменения не будут отменены по каким-либо причинам.
...
2.6 Защита данных
Для реализации защиты данных, хранящихся в таблицах БД в SQL используются операторы авторизации и привилегий. Операторы GRANT (предоставить) и REVOKE (отменить). Как и следует из названий функций, с помощью первой функции можно предоставить привилегии пользователю, а с помощью второй – отменить какие-либо привелегии.
Общий синтаксис команд GRANT и REVOKE
GRANT priv_type [(column_list)] [, priv_type [(column_list)] ...]
ON {tbl_name | * | *.* | db_name.*}
TO user_name [IDENTIFIED BY [PASSWORD] 'password']
[, user_name [IDENTIFIED BY 'password'] ...]
[REQUIRE
[{SSL| X509}]
[CIPHER cipher [AND]]
[ISSUER issuer [AND]]
[SUBJECT subject]]
[WITH [GRANT OPTION | MAX_QUERIES_PER_HOUR # |
MAX_UPDATES_PER_HOUR # |
MAX_CONNECTIONS_PER_HOUR #]]
REVOKE priv_type [(column_list)] [, priv_type [(column_list)] ...]
ON {tbl_name | * | *.* | db_name.*}
FROM user_name [, user_name ...
...
2.7 Обработка ошибок в SQL
При выполнении любых действий, носящих программный характер, у пользователя должна быть возможность оперативно реагировать на любые отклонения от нормального протекания информационных процессов. Для решения данной задачи в SQL разработчиками предусмотрен механизм обработки исключительных ситуаций.
Этот механизм представляет из себя прием, который обеспечивает перехват и обработку ошибок и предупреждений. SQL построен таким образом, что исключительные ситуации могут возникнуть только при выполнении SQL-операторов. Поэтому после завершения выполнения любого оператора пользователю, помимо результата работы оператора, например SELECT, выводится код возврата, по значению которого можно судить о успешности выполнения оператора. Коды возврата записываются в системные переменные, которые специально для этого предназначены: SQLSTATE и SQLCODE. Возникновение исключительных ситуаций в каждой переменной кодируется по-разному.
...
Заключение
При написании данной работы была рассмотрена структура языка SQL, а так же одна из большинства групп операторов SQL. При рассмотрении были, по возможности, приведены примеры для базы данных, которая описанна в приложении А. А также были показаны основные функции и область применения языка структурированных запросов.
SQL является непроцедурным языком, построенным на использовании обычных английских слов (таких как SELECT, INSERT, DELETE). Язык легок в освоении, для его успешного применения достаточно базового знания английского языка и некоторых синтаксических особенностей написания запросов. Он может применяться как опытными разработчиками программ, так и рядовыми пользователями. На данный момент язык SQL является стандартным языком определения и манипулирования реляционными базами данных.
В данной работе была подробно рассмотрена работа основных операторов языка SQL: SELECT, INSERT, UPDATE, DELETE.
...
1 Бойко В. В., Савинков В.М. Проектирование баз данных информационных систем. – М.: Финансы и статистика, 1989. – 351 с.
2 Боуман Д. С., Эмерсон С. Л., Дарновски М.. Практическое руководство по SQL. 3-е издание.- М.: Вильямс. 2001. 336 с.
3 Виейра Р. Программирование баз данных Microsoft SQL Server 2005. Базовый курс. - М.: Диалектика. 2008. 832 с.
4 Дейт К.Дж. Введение в системы баз данных. 6 изд.- М.: Вильямс. 2000. – 317с.
5 Джоунс Э., Стивенз Р. К., Плюю Р. Р., Гарретт, Кригель А.. Функции SQL. Справочник программиста. - М.: Диалектика. 2006. 768 с.
6 Когаловский М.Р. Энциклопедия технологий баз данных. – М.: Финансы и статистика, 2002. – 800 с.
7 Леонтьев В.П. ПК: универсальный справочник пользователя - М.:2003. – 251с.
8 Материалы сайта http://www.sql-ex.ru/help.
9 Уилтон П., Колби Д. Язык запросов SQL для начинающих. - М.: Диалектика. 2006. 496 с.
10 Фаронов В.В. Основы программирования в SQL. - М.: Издатель Молгачева С.В., 2002. – 329 с.
Не подошла эта работа?
Закажи новую работу, сделанную по твоим требованиям
Введение 2
1. История развития SQL 3
2. Язык структурированных запросов SQL 5
2.1 Таблицы SQL 6
2.2 Структура языка SQL 7
2.3 Структура запросов SQL 8
2.3 Оператор SELECT 10
2.4 Операторы модификации данных 20
2.4.1 Оператор INSERT 20
2.4.2 Оператор UPDATE 25
2.4.3 Оператор DELETE 27
2.5 Транзакции в SQL 28
2.6 Защита данных 30
2.7 Обработка ошибок 32
Заключение 34
Список использованных источников 36
Приложение А 37
4 Дейт К.Дж. Введение в системы баз данных. 6 изд.- М.: Вильямс. 2000. – 317с.
5 Джоунс Э., Стивенз Р. К., Плюю Р. Р., Гарретт, Кригель А.. Функции SQL. Справочник программиста. - М.: Диалектика. 2006. 768 с.
6 Когаловский М.Р. Энциклопедия технологий баз данных. – М.: Финансы и статистика, 2002. – 800 с.
7 Леонтьев В.П. ПК: универсальный справочник пользователя - М.:2003. – 251с.
8 Материалы сайта http://www.sql-ex.ru/help.
9 Уилтон П., Колби Д. Язык запросов SQL для начинающих. - М.: Диалектика. 2006. 496 с.
10 Фаронов В.В. Основы программирования в SQL. - М.: Издатель Молгачева С.В., 2002. – 329 с.
Приложение А
Схема БД Компьютерная фирма состоит из четырех отношений:
1) Product(maker, model, type);
2) PC(code, model, speed, ram, hd, cd, price);
3) Laptop(code, model, speed, ram, hd, screen, price);
4) Printer(code, model, color, type, price).
...
1. История развития SQL
Язык для взаимодействия с базами данных SQL появился еще в середине семидесятых годов ХХ столетия, и был разработан в рамках проекта экспериментальной реляционной СУБД System R. Изначально данный язык назывался SEQUEL (Structured English Query Language). И данной название не совсем полностью передает суть этого языка. Главной целью разработки данного языка являлась удобная и понятная пользователям формулировка запросов к реляционной базе данных, но в действительности уже являлся полным языком баз данных, который содержал не только операторы формулирования запросов и манипулирования базой данных, но также и средства определения и манипулирования схемой базы данных. Однако в языке не был предусмотрен механизм синхронизации доступа к объектам базы данных со стороны параллельно выполняемых транзакций, т.к. с самого начала предполагалось, что всю требуемую синхронизацию в неявной форме выполняет система управления базами данных (СУБД).
...
2.3 Структура запросов SQL
В синтаксических конструкциях запросов SQL приняты следующие обозначения:
1) звездочка (*) – обозначает "все" – употребляется в обычном для программирования смысле, т.е. "все случаи, которые удовлетворяют заданному определению";
2) квадратные скобки ([]) – конструкции, которые заключены в эти скобки, являются необязательными (т.е. могут быть опущены);
3) фигурные скобки ({}) – конструкции, которые заключены в такие скобки, рассматриваются как цельные синтаксические единицы. То есть эти скобки применяются для уточнения порядка разбора синтаксических конструкций, заменяя таким образом обычные скобки, используемые в синтаксисе SQL;
4) многоточие (…) – указывает на то, что синтаксическая единица, которая предшествует многоточию, может быть повторенной несколько раз;
5) прямая черта (|) – означает возможность выбора какого-либо параметра из нескольких возможных.
...
2.3 Оператор SELECT
Для получения практически любых данных любого количества таблиц базы данных используется оператор запроса SELECT.
Этот оператор выбирает записи из базы данных и имеет самую сложную структуру, по сравнению с другими операторами языка SQL. Простейший запрос, с использованием оператора SELECT выглядит следующим обрезом:
SELECT * FROM PC; (1)
Запрос 1 осуществляет выборку всех записей из объекта БД табличного типа (таблицы) с именем PC. Результат выполнения запроса представлен на рисунке 2.
Рис. 2 — Результат выполнения запроса (1)
Следует обратить внимание, что столбцы и строки результирующей таблицы не упорядочены, то есть идут в порядке, в котором были созданы. Для того, чтобы изменить порядок столбцов в результирующем наборе, необходимо перечислить их названия через запятую в нужном порядке после слова SELECT (результат на рисунке 3):
SELECT price, speed, hd, ram, cd, model, code FROM Pc; (2)
Рис.
...
2.4.1 Оператор INSERT
Назначение оператора INSERT – вставка новых строк в таблицу базы данных. При этом значения, которые необходимо вставить в поля таблицы, могут быть как прописанными заранее константы, так и являться результатом выполнения подзапроса (вложенного запроса). В первом варианте для каждой строки данных формируется отдельное предложение оператора INSERT, а во втором – в таблицу будет добавлено столько строк, сколько возвратит подзапрос.
Общий синтаксис оператора:
INSERT INTO <имя таблицы>[(<имя столбца>,...)]
{VALUES (< значение столбца>,…)}
| <выражение запроса>
| {DEFAULT VALUES};
Как видно из общего синтаксиса оператора, список столбцов – не обязательный параметр. Тогда, в случае отсутствия списка столбцов, список добавляемых значений должен быть полным, то есть должен включать в себя значения для каждого столбца изменяемой таблицы БД.
...
2.4.2 Оператор UPDATE
Оператор UPDATE предназначен для изменения имеющихся данных в таблице. Общий синтаксис команды:
UPDATE
SET {имя столбца = {выражение для вычисления значения столбца
| NULL
| DEFAULT},...}
[ {WHERE }];
В отличие от оператора INSERT оператор UPDATE позволяет работать с несколькими столбцами любого количества таблиц. Однако, в одном и том же предложении оператора UPDATE можно вносить изменения в каждый столбец указанной таблицы только один раз. Также следует отметить, что при использовании UPDATE без предложения WHERE обновятся сразу все строки таблицы.
Если столбец допускает NULL-значение (пустое значение), то его можно указывать в явном виде. Кроме того, можно заменить имеющееся значение столбца на значение, присваиваемое по умолчанию (DEFAULT), для данного столбца.
Ссылка на "выражение для вычисления столбца" может относиться и к текущим значениям в изменяемой таблице.
...
2.4.3 Оператор DELETE
Оператор DELETE предназначен для удаления записей из таблицы базы данных. Оператор имеет достаточно простой синтаксис:
DELETE FROM <имя таблицы >
[WHERE <условие>];
В случае, если оператор WHERE опущен, то удаляются все записи из указанной таблицы.
Пусть, например, требуется удалить из таблицы Laptops все портативные компьютеры с размером экрана менее 12 дюймов. Эту задачу можно выполнить при помощи следующего запроса:
DELETE FROM Laptops WHERE screen < 12; (23)
Если же оператора WHERE не было, тогда удалились бы все записи из таблицы Laptops:
DELETE FROM Laptops; (24)
Оператор DELETE также позволяет использовать вложенные запросы. Пусть, например, необходимо удалить те подели ПК из таблицы Product, для которых нет соответствующих строк в таблице PC.
...
2.5 Транзакции в SQL
Под транзакцией понимается некоторая группа команд манипулирования с данными (добавление, изменение, удаление). Все изменения произведенные транзакциями, сохраняются в отдельной области памяти до окончательного подтверждения изменений (успешное завершение транзакции), либо до их отмены (откат транзакции). Если во время транзакции делается запрос на выборку данных, то создается отдельное представление. Основными функциями, которые выполняют транзакции в языке SQL, являются:
• атомарность - выполнение либо не выполнение сразу всех команд входящих в транзакцию;
• целостность БД - завершение транзакции не должно нарушать целостность БД;
• изоляция - можно отображать либо исходные данные, которые были до начала транзакции, либо новые данные после выполнения транзакции;
• сохранность данных - если пользователю пришло подтверждение выполнения транзакции, то его изменения не будут отменены по каким-либо причинам.
...
2.6 Защита данных
Для реализации защиты данных, хранящихся в таблицах БД в SQL используются операторы авторизации и привилегий. Операторы GRANT (предоставить) и REVOKE (отменить). Как и следует из названий функций, с помощью первой функции можно предоставить привилегии пользователю, а с помощью второй – отменить какие-либо привелегии.
Общий синтаксис команд GRANT и REVOKE
GRANT priv_type [(column_list)] [, priv_type [(column_list)] ...]
ON {tbl_name | * | *.* | db_name.*}
TO user_name [IDENTIFIED BY [PASSWORD] 'password']
[, user_name [IDENTIFIED BY 'password'] ...]
[REQUIRE
[{SSL| X509}]
[CIPHER cipher [AND]]
[ISSUER issuer [AND]]
[SUBJECT subject]]
[WITH [GRANT OPTION | MAX_QUERIES_PER_HOUR # |
MAX_UPDATES_PER_HOUR # |
MAX_CONNECTIONS_PER_HOUR #]]
REVOKE priv_type [(column_list)] [, priv_type [(column_list)] ...]
ON {tbl_name | * | *.* | db_name.*}
FROM user_name [, user_name ...
...
2.7 Обработка ошибок в SQL
При выполнении любых действий, носящих программный характер, у пользователя должна быть возможность оперативно реагировать на любые отклонения от нормального протекания информационных процессов. Для решения данной задачи в SQL разработчиками предусмотрен механизм обработки исключительных ситуаций.
Этот механизм представляет из себя прием, который обеспечивает перехват и обработку ошибок и предупреждений. SQL построен таким образом, что исключительные ситуации могут возникнуть только при выполнении SQL-операторов. Поэтому после завершения выполнения любого оператора пользователю, помимо результата работы оператора, например SELECT, выводится код возврата, по значению которого можно судить о успешности выполнения оператора. Коды возврата записываются в системные переменные, которые специально для этого предназначены: SQLSTATE и SQLCODE. Возникновение исключительных ситуаций в каждой переменной кодируется по-разному.
...
Заключение
При написании данной работы была рассмотрена структура языка SQL, а так же одна из большинства групп операторов SQL. При рассмотрении были, по возможности, приведены примеры для базы данных, которая описанна в приложении А. А также были показаны основные функции и область применения языка структурированных запросов.
SQL является непроцедурным языком, построенным на использовании обычных английских слов (таких как SELECT, INSERT, DELETE). Язык легок в освоении, для его успешного применения достаточно базового знания английского языка и некоторых синтаксических особенностей написания запросов. Он может применяться как опытными разработчиками программ, так и рядовыми пользователями. На данный момент язык SQL является стандартным языком определения и манипулирования реляционными базами данных.
В данной работе была подробно рассмотрена работа основных операторов языка SQL: SELECT, INSERT, UPDATE, DELETE.
...
1 Бойко В. В., Савинков В.М. Проектирование баз данных информационных систем. – М.: Финансы и статистика, 1989. – 351 с.
2 Боуман Д. С., Эмерсон С. Л., Дарновски М.. Практическое руководство по SQL. 3-е издание.- М.: Вильямс. 2001. 336 с.
3 Виейра Р. Программирование баз данных Microsoft SQL Server 2005. Базовый курс. - М.: Диалектика. 2008. 832 с.
4 Дейт К.Дж. Введение в системы баз данных. 6 изд.- М.: Вильямс. 2000. – 317с.
5 Джоунс Э., Стивенз Р. К., Плюю Р. Р., Гарретт, Кригель А.. Функции SQL. Справочник программиста. - М.: Диалектика. 2006. 768 с.
6 Когаловский М.Р. Энциклопедия технологий баз данных. – М.: Финансы и статистика, 2002. – 800 с.
7 Леонтьев В.П. ПК: универсальный справочник пользователя - М.:2003. – 251с.
8 Материалы сайта http://www.sql-ex.ru/help.
9 Уилтон П., Колби Д. Язык запросов SQL для начинающих. - М.: Диалектика. 2006. 496 с.
10 Фаронов В.В. Основы программирования в SQL. - М.: Издатель Молгачева С.В., 2002. – 329 с.
Купить эту работу vs Заказать новую | ||
---|---|---|
0 раз | Куплено | Выполняется индивидуально |
Не менее 40%
Исполнитель, загружая работу в «Банк готовых работ» подтверждает, что
уровень оригинальности
работы составляет не менее 40%
|
Уникальность | Выполняется индивидуально |
Сразу в личном кабинете | Доступность | Срок 1—6 дней |
350 ₽ | Цена | от 500 ₽ |
Не подошла эта работа?
В нашей базе 144917 Курсовых работ — поможем найти подходящую