Команды SQL

create database
use
create table
describe
alter table
drop table
drop database insert into…values
delete
select
update
show

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

Команды SQL не чувствительны к регистру, но традиционно они набираются прописными буквами.
Типы полей базы данных

Список наиболее часто встречающихся типов приведен в таблицах 1 - 3. Для многих типов данных задается максимальная ширина отображения, указываемая в скобках, которую мы далее будем обозначать символом max. К примеру, запись INT(2) означает, что значение данного поля не может превышать 100.

К числовым типам относятся целые числа и числа с плавающей точкой. Для чисел с плавающей точкой, кроме максимальной ширины отображения можно также указывать число значащих цифр после запятой, далее обозначаемое символом P.

Таблица 1. Числовые типы

Тип

Описание

TINYINT[(max)]

Очень маленькие целые числа диапазона -127…128.

SMALLINT[(max)]

Маленькие целые числа диапазона -32768…32767.

MEDIUMINT[(max)]

Средние целые числа.

INT[(max)]

Обычные целые числа.

FLOAT[(max,P)]

Числа с плавающей точкой одинарной точности.

DOUBLE[(max,P)]

Числа с плавающей точкой двойной точности.

DECIMAL[(max,P)]

Числа с плавающей точкой, приведенные к типу char.



Типы даты и времени приведены в таблице 2.
Таблица 2. Типы даты и времени

Тип

Описание

DATE

Дата в формате ГГГГ-ММ-ДД.

TIME

Время в формате ЧЧ-ММ-СС.

DATETIME

Дата и время в формате ГГГГ-ММ-ДД ЧЧ-ММ-СС.

YEAR

Год в формате ГГ или ГГГГ.

TIMESTAMP

Метка времени для отсчетов по транзакциям в формате ГГГГ-ММ-ДД ЧЧ-ММ-СС.



Основные строковые типы приведены в таблице 3.
Таблица 3. Строковые типы

Тип

Описание

CHAR (len)[BINARY]

Строки с длиной len, которое не превышает 255 символов. Ключевое слово BINARY указывает на то, что данные должны обрабатываться независимо от регистра.

CHAR

Синоним CHAR(1).

VARCHAR (len)[BINARY]

Синоним CHAR(len)за исключением того, что строки могут быть произвольной длины.

TEXT

Строки с максимальной длиной символов равной 65535. Данные этого типа чувствительны к регистру.

BLOB

Двоичные строки с максимальной длиной символов равной 65535. Тип BLOB (binary large object - большой двоичный объект) предназначен для хранения двоичных данных, в том числе изображений и звуковых последовательностей.



CREATE DATABASE

Эта команда создает новую базу данных:

CREATE DATABASE db_name;

Здесь db_name является именем создаваемой базы данных. Для того чтобы создать новую базу данных forum, наберите в строке-приглашении клиента MySQL mysql> эту команду и укажите название базы данных:

mysql> CREATE DATABASE forum;

Примечание

Каждый запрос MySQL завершается точкой с запятой.

При успешном выполнении команды MySQL выдаст строку, в которой сообщается, что этот запрос выполнен успешно и показано время, затраченное на выполнение запроса:

Query OK, 1 row affected (0.02 sec)

Далее в тексте строку MySQL с результатом выполнения команды мы будем приводить непосредственно в соответствующем листинге.

Для того, чтобы убедится, что база данных forum успешно создана, можно выполнить команду SHOW DATABASES, которая покажет, какие базы данных существуют на вашем компьютере:

mysql> SHOW DATABASES;

Как видим, среди различных баз данных на компьютере автора присутствует и только что созданная база данных forum: (рис.)
img_php72.gif

Замечание

Команда SHOW DATABASES является внутренней командой MySQL, отсутствующей в стандарте SQL и неподдерживаемой другими базами данных.

Замечание

Изначально, в МуSQL присутствует только две базы данных: test и mysql. В последней хранится системный каталог, описывающий внутреннюю структуру СУБД MySQL.

USE

Для того чтобы начать работу с таблицами, необходимо сообщить MySQL с какой базой данных вы намерены работать. Это осуществляется при помощи команды USE:

USE db_name;
Здесь db_name - название выбираемой базы данных. Выберем созданную базу forum:

mysql> CREATE DATABASE forum;
Database changed;
CREATE TABLE

Команда CREATE TABLE создает новую таблицу в выбранной базе данных и которая в простейшем случае имеет следующий синтаксис:

CREATE TABLE table_name [(create_definition, ...)]

Здесь table_name - имя создаваемой таблицы.

Создадим первую таблицу базы данных forum, которая называется authors и содержит различные данные об зарегистрированных посетителях форума: ник (name), пароль (passw), e-mail (email), Web-адрес сайта посетителя (url), номер ICQ (iсq), сведения об посетителе (about), строку содержащую путь к файлу фотографии посетителя (photo), время добавления запроса (time), последнее время посещения форума (last_time), статус посетителя - является ли он модератором, администратором или обычным посетителем (statususer). Кроме перечисленных полей в таблице имеется поле id_author, являющийся первичным ключом таблицы. SQL-запрос, создающий эту таблицу приведен в листинге:

mysql> CREATE TABLE authors (
id_author int(6) NOT NULL auto_increment,
name text,
passw text,
email text,
url text,
iсq text,
about text,
photo text,
time datetime default NULL,
last_time datetime default NULL,
themes int(10) default NULL,
statususer int(2) default NULL,
PRIMARY KEY (id_author)
) TYPE=MyISAM;
Выполнив SQL-команду SHOW TABLES, можно убедиться, что таблица authors успешно создана
img_php72_2.gif

<<< - Предыдущая | Cледующая ->>>