Серверная (www.it-simple.ru)

Примеры SQL-запросов в MySQL


Памятка для меня, будет обновляться постоянно. Может ещё кому пригодится.

Перевести локаль ввода-вывода в юникод:

SET names utf8;

Создать новую базу данных:

CREATE DATABASE имя_базы;

Создать нового пользователя базы с присвоением ему полных прав:

GRANT ALL PRIVILEGES ON имя_базы.* TO новый_пользователь@сервер
    ->     IDENTIFIED BY 'пароль' WITH GRANT OPTION;

Информация о базе и таблицах

Вывести имя текущей базы данных:

SELECT DATABASE();

Вывести список таблиц текущей базы данных:

SHOW TABLES;

Вывести структуру конкретной таблицы:

DESCRIBE имя_таблицы;

Вывести информацию об индексах:

SHOW INDEX FROM имя_таблицы;

Получение количества записей в таблице:

SELECT COUNT(*) FROM имя_таблицы;

Редактирование таблиц и записей

Добавить записи в таблицу:

INSERT INTO имя_таблицы (имя_столбца1,имя_столбца2,..) VALUES (значение1-1,значение1-2,..),(значение2-1,значение2-2,..);

Изменение поля (или нескольких полей) в таблице:

UPDATE имя_таблицы SET имя_столбца=новое_значение [,имя_столбца2=новое_значение2 ...] WHERE условие_изменения;

Выбор всех записей таблицы (и вывод их на экран если делаем запрос из консоли):

SELECT * FROM имя_таблицы;

Создание простой таблицы, из двух столбцов, идентификатора и короткого текста:

CREATE TABLE test (id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,text TINYTEXT);

Изменение имени или типа столбца:

ALTER TABLE имя_таблицы CHANGE старое_имя_столбца новое_имя_столбца новый_тип_столбца;

Изменение имени таблицы:

ALTER TABLE имя_таблицы RENAME [AS] новое_имя_таблицы;

Удаление записей из таблицы:

DELETE FROM имя_таблицы WHERE условие;

Удаляются все записи таблицы, удовлетворяющие условию. Если условие пропущено, будут удалены вообще все записи из таблицы.

Удаление определённого индекса:

ALTER TABLE имя_таблицы DROP INDEX имя_столбца;