Условие:
Вы должны выполнить следующие задачи, прежде чем практиковать операторы 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, где проверяется, что поля первичного и внешнего ключей таблицы не могут быть удалены.