MyTetra Share
Делитесь знаниями!
Interrustravel экскурсии и туры в казань www.niagaratour.ru.
SQLite3, ALTER TABLE (Изменение таблицы)
25.12.2012
11:55
Текстовые метки: sqlite,sqlite3
Раздел: Компьютер - Программирование - SQL - SQLite3

ALTER TABLE

sql-statement ::=

ALTER TABLE [database-name .] table-name alteration

alteration ::=

RENAME TO new-table-name

alteration ::=

ADD [COLUMN] column-def

SQLite версия команды ALTER TABLE позволяет пользователю переименовать или добавить новые поля в существующую таблицу. Нет возможности удалить поле из таблицы.

Синтаксис RENAME TO используется при переименовании таблицы из [database-name.]table-name в new-table-name. Эта команда не может применяться для переноса таблиц между базами данных, только переименование в пределах одной базы.

Если переименованная таблица имеет триггеры или индексы, то они остаются связанными с таблицей и после переименования. Однако, если имеются представления (view) или запросы выполняемые триггерами, ссылаются на переименованную таблицу, то они автоматически не изменяются. Если необходимо то триггеры и представления, должны быть удалены и повторно созданы вручную.

Синтаксис ADD [COLUMN] используется для добавления нового поля в существующую таблицу. Новый столбец всегда добавляется в конец списка полей. Описание добавляемого столбца должен соответствовать формату, разрешенному в CREATE TABLE, со следующими ограничениями:

  • Столбец не может иметь ограничений PRIMARY KEY или UNIQUE.
  • Столбец не может иметь значений по умолчанию CURRENT_TIME, CURRENT_DATE или CURRENT_TIMESTAMP.
  • Если наложено ограничение NOT NULL, столбец должен иметь значение по умолчанию, отличное от NULL.

Время выполнения команды ALTER TABLE не зависит от количества данных в таблице. ALTER TABLE работает также быстро на таблице с 10 миллионами записей, как и на таблице с 1 записью.

После выполнения ADD COLUMN, база данных не будет читаться SQLite версии 3.1.3 и ниже, до применения команды VACUUM.

Так же в этом разделе:
← Содержание ...
 
MyTetra Share v.0.35
Яндекс индекс цитирования