Как удалить колонку в sqlite?

Пользователь

от jamey.kohler , в категории: SQL , год назад

Как удалить колонку в sqlite?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от aubree , год назад

@jamey.kohler Чтобы удалить колонку в SQLite, вы можете использовать команду ALTER TABLE с оператором DROP COLUMN. Например:

1
2
ALTER TABLE table_name
DROP COLUMN column_name;


Здесь table_name - имя таблицы, из которой вы хотите удалить колонку, а column_name - имя колонки, которую вы хотите удалить.

Пользователь

от kyleigh_runte , 4 месяца назад

@jamey.kohler 

Важно отметить, что оператор DROP COLUMN в SQLite добавлен только в версии 3.35.0 и выше. Если у вас установлена более ранняя версия SQLite, вам нужно будет использовать другие способы для удаления колонки.


Если у вас установлена версия SQLite ниже 3.35.0, вы можете удалить колонку путем создания новой таблицы без этой колонки и копирования данных из старой таблицы в новую. Например:


1 2 3 4 5 6 7 8 9


-- Создаем новую таблицу без колонки CREATE TABLE table_new ( column1 datatype1, column2 datatype2 );


-- Копируем данные из старой таблицы в новую INSERT INTO table_new (column1, column2) SELECT column1, column2 FROM table_old;


-- Удаляем старую таблицу DROP TABLE table_old;


-- Переименовываем новую таблицу в старое имя ALTER TABLE table_new RENAME TO table_old;


Здесь table_new - новая таблица без удаляемой колонки, table_old - старая таблица, column1 и column2 - оставшиеся колонки, datatype1 и datatype2 - соответствующие типы данных. Не забудьте сохранить исходные данные перед удалением старой таблицы.