Рейтинг блогов

Основы SQL

дата добавления: 16 сентября 2003 / 15:42, просмотров: 10211, комментариев: 2
Старенькая статейка, была написана специально для online журнала Compaworld.

 

Structured Query Language (Язык Структурированных Запросов) разработан корпораций IBM в начале 1970-х годов. В 1986 году SQL был впервые стандартизирован организаций ANSI.

SQL - этом мощный и в то же время не сложный язык для управления базами данных. Он поддерживается практически всеми современными базами данных. SQL подразделятся на два подмножества команд: DDL (Data Definition Language – язык определения данных) и DML (Data Manipulation Language – язык обработки данных). Команды DDL используются для создания новых баз данных, таблиц и столбцов, а команды DML – для чтения, записи, сортировки, фильтрования, удаления данных.

В этой статье будут более подробно рассмотрены команды DML, поскольку их приходится использовать гораздо чаще.

 

Команды DDL

 

CREATE – используется для создания новых таблиц, столбцов и индексов.

DROP – используется для удаления столбцов и индексов.

ALTER – используется для добавления в таблицы новых столбцов и изменения определенных столбцов.

 

Команды DML

 

SELECT – наиболее часто используемая команда, применяется для получения набора данных из таблицы базы данных. Команда SELECT имеет следующий синтаксис:

 

SELECT список_полей1 FROM имя_таблицы [WHERE критерий ORDER BY список_полей2 [ASC | DESC]]

 

Операторы, находящие внутри квадратных скобок не обязательны, а вертикальная черта означает, что должна присутствовать одна из указанных фраз, но не обе.

 

Для примера создадим простейший запрос на получение данных из полей "name" и "phone" таблицы "friends":

 

SELECT name, phone FROM friends

 

, если необходимо получить все поля таблицы, то не обязательно их перечислять, достаточно поставить звездочку (*):

 

SELECT * FROM friends

 

Для исключения из выводимого списка повторяющихся записей, используется ключевое слово DISTINCT:

 

SELECT DISTINCT name FROM friends

 

Если необходимо получить отдельную запись, то используется оператор WHERE. Например, нам надо получить из таблицы "friends" номер телефона "Васи Пупкина":

 

SELECT * FROM friends WHERE name = 'Вася Пупкин'

 

или наоборот, нам надо узнать кому принадлежит телефон 44-65-01:

 

SELECT * FROM friends WHERE phone = '44-65-01'

 

Помимо этого можно использовать подстановочные символы, таким образом создавая шаблоны поиска. Для этого используется оператор LIKE. Оператор LIKE имеет следующие операторы подстановки:

 

* - соответствует строке состоящей из одного или более символов;

_ - соответствует одному любому символу;

[] – соответствует одному символу из определенного набора;

 

Например, для получения записей из поля "name" содержащих слово "Вася", запрос будит выглядеть следующим образом:

 

SELECT * FROM friends WHERE name LIKE '*Вася*'

 

Для определения порядка, в котором возвращаются данные используется оператор ORDER BY. Без этого оператора порядок возвращаемых данных невозможно предсказать. Ключевые слова ASC и DESC позволяют определить направление сортировки. ASC – упорядочивает по возрастанию, а DESC – по убыванию.

Например, запрос на получение списка записей из поля "name" в алфавитном порядке будет выглядеть следующим образом:

 

SELECT * FROM friends ORDER BY name

 

Обратите внимание, ключевое слово ASC указывать не обязательно, поскольку оно используется по умолчанию.

 

INSERT – данная команда служит для добавления новой записи в таблицу. Записывается она следующим образом:

 

INSERT INTO имя_таблицы VALUES (список_значений)

 

Обратите внимание, типы значений в списке значений должны соответствовать типам значений полей таблицы, например:

 

INSERT INTO friends VALUES ('Анка Пулеметчица', '32-09-81')

 

В данном примере в таблицу friends добавляется новая запись с указанными значениями.

 

UPDATE – эта команда применяется для обновления данных в таблице и чаще всего используется совместно с оператором WHERE. Команда UPDATE имеет следующий синтаксис:

 

UPDATE имя_таблицы SET имя_поля = значение [WHERE критерий]

 

Если опустить оператор WHERE, то будут обновлены данные во всех определенных полях таблицы. Для примера, поменяем номер телефона Васи Пупкуна:

 

UPDATE friends SET phone = '55-55-55' WHERE name = 'Вася Пупкин'

 

DELETE – как вы уже наверное поняли, эта команда служит для удаления записей из таблицы. Как и UPDATE, команда DELETE обычно используется с оператором WHERE, если этот оператор пропустить, то будут удалены все данные из указанной таблицы. Синтаксис команды DELETE выглядит следующим образом:

 

DELETE FROM имя_таблицы [WHERE критерий]

 

Для примера, давайте удалим этого надоедливого Васю Пупкина из нашей таблицы :) :

 

DELETE FROM friends WHERE name = 'Вася Пупкин'

 

The конец

 

В этой статье я рассказал об основных операторах SQL, их вполнее достаточно для работы с базами данных, об остальных операторах, более детально, я расскажу в другой раз.

Комментарии (всего: 2)

Добавить комментарий rss
Автор: Andrey @ 14 апреля 2008, 10:33   ·   ссылка
:)))
Автор: Arti @ 05 мая 2008, 17:22   ·   ссылка
Спасибо, ещё бы с примерами на VB.Net было б вообще здорово.

Добавить комментарий

Добавлять комментарии могут только зарегистрированные пользователи сайта.
Если у Вас уже есть учётная запись на этом сайте, пройдите процудуру авторизации.
В противном случае, зарегистрируйтесь на сайте.