Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Labor5.doc
Скачиваний:
4
Добавлен:
08.11.2018
Размер:
325.63 Кб
Скачать

Основные запросы sql.

CREATE TABLE - Создание таблицы.

create table tablename (col1 type, col2 type, col3 type, … colN type, primary key (col1)); где tablename – название таблицы, col1 – первый столбец, type – тип данных, primary key (col1) – запись, означающая, что первичным ключом назначается столбец col1.

Наиболее часто используемые типы данных – int (целое число) и text (символы русского, английского алфавитов, цифры, некоторые спецсимволы).

Пример: create table users (id int, name text, surname text, year int, age int, primary key (id)); #Создали таблицу users со столбцами id (целое число), name и surname (текстовый тип), year и age (целое число).

Insert into – Заполнение таблицы.

insert into tablename values (‘value1’,’value2’,….’valueN’); заполнить таблицу значениями по порядку. В данном случае value1 будет занесено в 1-ый столбец, value2- во 2-ой, valueN – в N-ный.

ПРИМЕР. Допустим, имеется таблица users со столбцами id, name, surname, year,age. Добавим в неё 2 записи.

Insert into users values (‘1’,’Иван’,’Петров’,’1990’,’19’);

Insert into users values (‘2’,’Александр’,’Сидоров’,’1989’,’20’);

SELECT * FROM – Выборка.

Select col1, col2,…colN from tablename where col1<условие><значение>; Выбираем записи из таблицы tablename, удовлетворяющие условию, и отображаем только столбцы col1, col2, … colN.

Условие – это неравенство или равенство. То есть, больше (>), меньше (<), равно (=), не равно (!=), like (для данных типа text).

ПРИМЕР. Выберем из таблицы users информацию о пользователях, родившихся после 1989 года, и отобразим только их фамилии и имена.

Select name, surname from users where year>’1988’;

Рис. 3.

В поле Results будет выведена результирующая таблица.

Если мы хотим отобразить все имеющиеся столбцы, то используем знак * между select и from.

Select * from users where year>’1989’;

Рис. 4.

Если мы хотим отобразить таблицу полностью, то просто не задаём условия.

Select * from users; #Отобразится вся таблица.

Рис. 5.

Теперь зададим 2 условия:

Select * from users where id > 1 and year = ‘1989’; #Отобразятся сведения о пользователях, чей порядковый номер (id) больше 1 и год рождения равен 1989. and («и» – англ.) означает обязательность выполнения обоих условий. Можно также использовать or («или» - англ.), который означает обязательность выполнения хотя бы одного из условий.

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

Select * from users where id > 1 && year = ‘1989’ order by id desc; #То же самое, только результаты упорядочиваем по убыванию (desc) значения в столбце id. Если необходимо упорядочить по возрастанию, то используем параметр asc (вместо desc).

Select * from users where year != ‘1990’; #Выберем сведения о всех пользователях, кроме тех, кто рождён в 1990 году.

Select * from users where year = ‘1990’ or year = ’1989’; #Выберем сведения о пользователях, родившихся в 1990 или 1989 году.

Возможно, вы уже заметили, что прежде мы делали выборку по равенству или неравенству значений типа int. Там для указания равенства мы использовали знак =. Но для данных типа text знак = неприменим. Для них используют параметр like.

Select * from users where name like ‘Иван’; #Выбрали сведения о всех пользователях по имени «Иван».

UPDATE – установка (изменение) значений.

Update tablename set col1=’value1’ where col2=’value2’; В таблице tablename заменяются значения столбца col1 на значение value1 в тех записях, где значение столбца col2 равно value2.

ПРИМЕР. Изменим возраст с 20 на 21 у студентов, родившихся в 1989 году.

Update users set age=’21’ where year=’1989’; #Всем, кто родился в 1989 году, установить возраст 21 год.

Выполним запрос и убедимся, что изменения произошли.

Update users set age=’21’ where year=’1990’ and surname like ‘Петров’; #Установить возраст 21 год студенту по фамилии «Петров», который родился в 1990 году.

Чтобы убедиться в том, что замена произошла корректно, используйте запрос SELECT * from …

ALTER TABLE – изменение структуры таблицы.

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

Добавление столбца.

Alter table tablename add colM type; - в таблицу tablename добавим столбец с именем colM и типом данных type.

ПРИМЕР.

Alter table users add homepage text; В таблицу users добавили столбец homepage с типом данных text.

Удаление столбца.

Alter table tablename drop colM; В таблице tablename уничтожили столбец colM.

ПРИМЕР.

Alter table users drop homepage; Из таблицы users удалили столбец homepage.

DROP TABLE – Удаление таблицы.

drop table tablename; уничтожить таблицу с названием tablename. Удаляется не только структура таблицы, но и все её записи.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]