Янв 26 2009

Важные команды MySQL

Любой администратор работающий с MySQL, обязательно должен знать эти команды:
Команда показывает полную структуру таблицы, включая индексы.

SHOW CREATE TABLE <имя таблицы>;

Команда показывает краткую информацию по таблице, только описание полей.

DESCR <имя таблицы>;

Создать базу:

CREATE DATABASE <имя базы>;

Команда LIMIT ограничивает вывод одной, первой записи.

SELECT * FROM <имя таблицы> LIMIT 1;


Команда LIMIT выведит пять строк, начиная с третьей.

SELECT * FROM <имя таблицы> LIMIT 2,5;

Команда добавляет поле в уже существующую таблицу.

ALTER TABLE <имя таблицы> ADD <имя поля> <тип поля>

К примеру добавим поле name тип varchar(25) к таблице test

ALTER TABLE test ADD name varchar(25) NOT NULL;

Команда изменяет указанное поле в таблице. При этом допускается полная смена имени поля, типа поля и т.д. и т.п.

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

К примеру:

ALTER TABLE test CHANGE name name varchar(30);

Команда удаляет из таблицы поле.

ALTER TABLE <имя таблици> DROP <имя поля>;

Команда добавляющая индекс к существующей таблице.

ALTER TABLE <имя таблицы> ADD INDEX <имя индекса>(<имя поля>);

Пример:

 alter table test add index name_idx(name);

Починка битой таблицы MyISAM, следует только учесть, что свободного места на разделе где находится база, должно быть больше чем размер таблицы.

REPAIR TABLE <имя таблици>;

При большой таблице репайр занимает очень много времени, нужно набраться терпения.

Оптимизация таблиц. Команда очень полезная. Она располагает данные оптимальным способом, ускоряет доступ к данным. Занимает тоже очень много времени на больших таблицах.

OPTIMIZE TABLE <имя таблицы>;

Удалить таблицу, данные естественно уничтожатся необратимо:

DROP TABLE <имя таблицы>;

Удалить базу, аналогично, следует несколько раз подумать прежде чем удалять:

DROP DATABSE <имя базы>;

Очистить данные в таблице. Не удаляя саму таблицу и не разрушая ее структуру:

TRUNCATE <имя таблицы>;

На этом список наиболее часто требуемых команд заканчивается. Эти команды при обслуживании MySQL приходится выполнять наиболее часто.

  • By Yorik, 15.04.2009 @ 10:31

    Серега, полистал тут на досуге блог.
    У тебя есть ошибочка по поводу лимитов, она, кстати, не редко встречается у людей, которые не строят постоянно выборки :)
    «Команда LIMIT ограничит вывод со второй по пятую строку. SELECT * FROM LIMIT 2,5;»
    На самом деле выведутся 5 строк начиная с 3-ей :)
    Первый параметр у лимита в такой форме — порядковый номер строки начиная с 0 (поэтому будет вывод с 3-ей строки), а второй параметр — это количество строк, которые нужно вывести.
    И, кстати, запись SELECT * FROM LIMIT 5; эквивлентна SELECT * FROM LIMIT 0,5;

  • By hilik, 15.04.2009 @ 11:03

    Спасибо.
    Сейчас исправлю.

  • By Taras, 26.04.2010 @ 22:00

    SELECT FROM WHERE LIKE (‘jo%n’);
    Очень полезный оператор — выбирает все строки , для которых похоже на jo%n:
    Jonathan , John

  • By blind, 13.07.2010 @ 22:06

    скажите пожалуйста, можно ли сделать селект, который будет выбирать все данные из столбца до знака @?

    то есть я хочу выбирать из столбца, в котором имейлы сам логин

  • By Без имени, 13.07.2010 @ 22:15

    Хорошо, но мало

Other Links to this Post


Украинская Баннерная Сеть