Как удалить столбец из таблицы SQLite

Kak Udalit Stolbec Iz Tablicy Sqlite



База данных используется для хранения данных приложения в структурированном формате. Существует множество инструментов базы данных для хранения данных приложения в табличном формате. SQLite — один из них. Это очень легкий инструмент базы данных, который в основном используется для реализации мобильных приложений. Синтаксис SQL для баз данных SQLite для выполнения различных типов операций с базами данных немного отличается от других стандартных инструментов баз данных, таких как MySQL, Oracle, SQL Server и т. д. sqlite3 устанавливается в операционной системе Linux по умолчанию. Таким образом, вам не нужно его устанавливать. В этом руководстве показан метод удаления одного или нескольких столбцов из таблицы SQLite.

Условие:

Вы должны выполнить следующие задачи, прежде чем практиковать операторы SQLite из этого руководства:

A. Выполните следующую команду, чтобы создать файл SQLite с именем «company.db», содержащий таблицы базы данных:







sqlite3 компания.db

B. Запустите следующую команду SQLite, чтобы проверить, создана ли база данных:



.базы данных

C. Запустите следующую инструкцию SQL, чтобы создать таблицу с именем «продукты». Таблица содержит пять полей и один первичный ключ:



СОЗДАВАТЬ СТОЛ продукты (
идентификатор ЦЕЛОЕ ЧИСЛО НАЧАЛЬНЫЙ КЛЮЧ ,
имя ТЕКСТ НЕТ НУЛЕВОЙ УНИКАЛЬНЫЙ ,
ТИП ТЕКСТ НЕТ НУЛЕВОЙ ,
бренд ТЕКСТ НЕТ НУЛЕВОЙ ,
цена INETEGER НЕТ НУЛЕВОЙ ) ;

D. Запустите следующую инструкцию SQL, чтобы создать таблицу с именем «поставщики». Таблица содержит пять полей, один первичный ключ и один внешний ключ. Итак, таблица «products» и таблица «suppliers» связаны внешним ключом:





СОЗДАВАТЬ СТОЛ поставщики (
идентификатор ЦЕЛОЕ ЧИСЛО НАЧАЛЬНЫЙ КЛЮЧ ,
имя ТЕКСТ НЕТ НУЛЕВОЙ УНИКАЛЬНЫЙ ,
адрес ТЕКСТ НЕТ НУЛЕВОЙ ,
бренд ТЕКСТ НЕТ НУЛЕВОЙ ,
product_id INETEGER НЕТ НУЛЕВОЙ ,
ИНОСТРАННЫЙ КЛЮЧ ( Код товара ) ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА продукты ( идентификатор ) ) ;

E. Запустите необходимые команды для форматирования вывода и проверьте структуру таблицы «products» с заголовком и табличной формой.

Следующая команда отображает заголовок вывода:



.заголовок включен

Следующая команда отображает вывод на основе столбцов:

столбец .mode

Следующая команда отображает структуру таблицы «products» в табличном виде:

прагма table_info ( 'продукты' ) ;

Структура таблицы «products» показана на следующем изображении с заголовком:

Синтаксис:

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

ИЗМЕНИТЬ СТОЛ ТАБЛИЦА_ИМЯ УРОНИТЬ СТОЛБЕЦ имя_столбца;

Различные примеры удаления столбца из таблицы SQLite

В этой части руководства показаны три способа удаления столбца из таблицы SQLite.

Пример 1: удаление столбца из таблицы

Запустите следующую инструкцию ALTER TABLE, чтобы удалить поле «бренд» из списка «продукт». с ' стол:

ИЗМЕНИТЬ СТОЛ продукты УРОНИТЬ СТОЛБЕЦ бренд;

Запустите следующую команду SQLite, чтобы проверить, удалено ли поле «бренд» из таблицы «продукты»:

прагма table_info ( 'продукты' ) ;

Вывод показывает, что поле «бренд» удалено из таблицы «продукты».

Пример 2. Удаление столбца из таблицы, который является первичным ключом

Первичный ключ используется в таблице для идентификации каждой записи отдельно. Таким образом, первичный ключ нельзя удалить из таблицы, и возникает ошибка, если оператор ALTER TABLE используется для удаления поля первичного ключа. Выполните следующую инструкцию ALTER TABLE, чтобы удалить поле «id» из таблицы «products», которая является первичным ключом таблицы:

ИЗМЕНИТЬ СТОЛ продукты УРОНИТЬ СТОЛБЕЦ идентификатор;

Следующая ошибка появляется, если вы хотите удалить первичный ключ таблицы:

Пример 3: удаление столбца из таблицы, который является внешним ключом

Как и первичный ключ, внешний ключ таблицы нельзя удалить, пока связь между таблицами не будет удалена. Выполните следующую инструкцию ALTER TABLE, чтобы удалить поле «product_id» из таблицы «suppliers», которая является чужой для этой таблицы:

ИЗМЕНИТЬ СТОЛ поставщики УРОНИТЬ СТОЛБЕЦ Код товара;

Если вы хотите удалить внешний ключ таблицы, появится следующая ошибка:

Заключение

В этом руководстве показаны три разных типа примеров для удаления столбца из таблицы SQLite, где проверяется, что поля первичного и внешнего ключей таблицы не могут быть удалены.