Изменение свойство таблицы
Posted by writer on Июнь 7th, 2008
Изменение свойств таблицы : Переименование таблицы (ALTER TABLE RENAME)
- Переименование таблицы можно сделать при помощи следующей конструкции:
- ALTER TABLE table_name_old RENAME table_name_new
где
-
- table_name_old - старое имя таблицы, которое нам нужно переименовать;
-
- table_name_new - новое имя таблицы.
- Допустим, нам нужно переименовать таблицу search в search_en:
-
$sql="ALTER TABLE search RENAME search_en";
-
mysql_query($sql);
Изменение свойств таблицы : Вставка столбцов (ALTER TABLE ADD)
- Вставку нового столбца можно осуществить при помощи следующей конструкции:
- ALTER TABLE table_name ADD field_name parametrs
где -
- table_name - имя таблицы, в которой будет вставлен новый столбец;
-
- field_name - имя вставляемого столбца;
- parametrs - параметры, описывающие вставляемый столбец.
- Обязательным параметром является указание типа данных.
(Про возможные типы данных подробно написано в Создание и удаление таблицы).Например, нам надо вставить в таблицу my_frends столбец под названием adress_2, который будет содержать текстовые значения:
-
$sql="ALTER TABLE my_frends ADD adress_2 TEXT"; mysql_query($sql);
- По умолчанию новый столбец вставляется в конец таблицы.
Если необходимо, чтобы столбец встал в начало таблицы, нужно после параметров вставляемого столбца написать ключевое слово FIRST: -
$sql="ALTER TABLE my_frends ADD adress_2 TEXT FIRST"; mysql_query($sql);
Теперь только что вставленный столбец окажется вначале таблицы.
Если необходимо, чтобы столбец был вставлен не в начале таблицы, и не в конце, а после определенного столбца, то нужно применить ключевое слово AFTER имя столбца, после которого будет установлен новый столбец:
-
$sql="ALTER TABLE my_frends ADD adress_2 TEXT AFTER adress_1"; mysql_query($sql);
В этом примере новый столбец adress_2 будет установлен после столбца adress_1.
Если нужно дописать к таблице не один, а несколько столбцов, то для каждого столбца нужно ADD field_name parametrs записать через запятую:
-
$sql="ALTER TABLE my_frends ADD adress_2 TEXT, ADD adress_3 TEXT, ADD adress_4 TEXT"; mysql_query($sql);В случае, если надо дописать два столбца внутри таблицы, можно поступить следующим образом:
$sql="ALTER TABLE my_frends ADD adress_2 TEXT AFTER adress_1, ADD adress_3 TEXT AFTER adress_2"; mysql_query($sql);Т.е. мы первый вставляемый столбец записываем после adress_1, а второй после первого.
Изменение свойств таблицы : Изменение свойств столбца (ALTER TABLE CHANGE)
- Изменить свойства одного или нескольких столбцов можно при помощи следующей конструкции:
- ALTER TABLE table_name CHANGE field_name_old field_name_new parametrs
где -
- table_name - имя таблицы, в которой находится изменяемый столбец;
-
- field_name_old - имя столбца изменяемого столбца;
-
- field_name_new - новое имя изменяемого столбца (должно равняться field_name_old, если мы не хотим поменять имя столбца);
-
- parametrs - новые параметры столбца.
- В следующем примере установим тип строки field_1 как текст:
$sql="ALTER TABLE my_table CHANGE field_1 field_1 TEXT"; mysql_query($sql);
- А если необходимо при этом еще и переименовать столбец в field_2, то получиться так:
$sql="ALTER TABLE my_table CHANGE field_1 field_2 TEXT"; mysql_query($sql);
В случае, если надо изменить свойства сразу нескольких столбцов, то конструкцию CHANGE field_name_old field_name_new parametrs повторяем через запятую для каждого столбца:
$sql="ALTER TABLE my_table CHANGE field_1 field_2 TEXT, CHANGE field_3 field_3 TEXT"; mysql_query($sql);
Изменение свойств таблицы : Удаление столбцов (ALTER TABLE DROP)
- Удаление столбца можно сделать при помощи следующей конструкции:
- ALTER TABLE table_name DROP field_name
где
-
- table_name - имя таблицы, в которой будет удален столбец;
-
- field_name - имя удаляемого столбца.
-
$sql="ALTER TABLE search DROP id_num"; mysql_query($sql);
- Если мы хотим удалить сразу несколько полей, то надо через запятую повторить DROP field_name для каждого столбца:
-
$sql="ALTER TABLE search DROP id_1, DROP id_2, DROP id_3"; mysql_query($sql);