Памятка для меня, будет обновляться постоянно. Может ещё кому пригодится.
Перевести локаль ввода-вывода в юникод:
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 имя_столбца;
Комментарии