У цьому розділі ми обговоримо, як ми можемо скинути колонки за допомогою ЗМІНИТИ ТАБЛИЦЮ команда.
зображення як фон в css
Команда PostgreSQL DROP COLUMN
Ми будемо використовувати умову DROP COLUMN у команді ALTER TABLE для видалення стовпця таблиці:
ALTER TABLE table_name DROP COLUMN column_name;
PostgreSQL автоматично видалить усі свої обмеження та індекси, включно зі стовпцем під час видалення стовпця з таблиці, і кожну умову стовпця, який буде видалено, відокремлено символом кома (,) .
Ми не можемо видалити ті стовпці, де інші об’єкти залежать від них, а також використовуються в інших об’єктах бази даних, наприклад тригери, представлення, збережені процедури, тощо
Отже, щоб видалити ці стовпці та всі пов’язані з ними об’єкти, ми будемо використовувати КАСКАД варіант в падіння колонки команду наступним чином:
ALTER TABLE table_name DROP COLUMN column_name CASCADE;
Якщо ми хочемо видалити неіснуючий стовпець, PostgreSQL викличе проблему. Ми додамо умову IF EXISTS у команду drop column, щоб подолати цю помилку, як ми бачимо в команді нижче:
ALTER TABLE table_name DROP COLUMN IF EXISTS column_name;
У наведеній вище команді, якщо ми видалимо стовпець, якого не існує, PostgreSQL викличе повідомлення, а не помилку.
Ми використаємо наведену нижче команду, якщо нам потрібно видалити різні стовпці таблиці за допомогою однієї команди:
ALTER TABLE table_name DROP COLUMN column_name_1, DROP COLUMN column_name_2;
Приклади команди PostgreSQL DROP COLUMN
Давайте розглянемо кілька прикладів, щоб зрозуміти роботу ЗМІНИТИ ВІДПУСТИТИ СТОВПЦІ ТАБЛИЦІ команда.
Отже, ми створимо три різні таблиці, наприклад Продукт, категорії та бренд .
На наведеній вище діаграмі кожен Продукт містить лише один бренд , і кожен бренд може мати кілька продуктів. Кожен продукт присвоєно a категорія , і кожна категорія може містити різні продукти.
Наступні команди використовуються для створення трьох таблиць (Категорії, продукт і бренд) :
Створення Категорії таблиці за допомогою наведеної нижче команди:
CREATE TABLE Categories ( Cate_id serial PRIMARY KEY, Cate_name VARCHAR NOT NULL );
Вихід
Після виконання команди вище ми отримаємо повідомлення нижче; в Категорії таблицю створено.
Створення Продукт таблиці за допомогою наступного оператора:
CREATE TABLE Product ( Pro_id serial PRIMARY KEY, Pro_name VARCHAR NOT NULL, Brand_id INT NOT NULL, Cate_id INT NOT NULL, List_price DECIMAL NOT NULL, Model_year SMALLINT NOT NULL, FOREIGN KEY (Cate_id) REFERENCES Categories (Cate_id), FOREIGN KEY (Brand_id) REFERENCES Brand (Brand_id) );
Вихід
Після виконання команди вище ми отримаємо повідомлення нижче; в Продукт таблицю створено.
Створення Бренд таблиці за допомогою такої команди:
CREATE TABLE Brand ( Brand_id serial PRIMARY KEY, Brand_name VARCHAR NOT NULL );
Вихід
Після виконання команди вище ми отримаємо повідомлення нижче; в Бренд таблицю створено.
Крім того, ми створюємо перегляд на основі Продукт і Бренд таблиці наступним чином:
CREATE VIEW Product_info AS SELECT Pro_id, Pro_name, Brand_name FROM Product p INNER JOIN Brand B ON B .Brand_id = p.Brand_id ORDER BY Pro_name;
Вихід
Після виконання команди вище ми отримаємо повідомлення нижче; в Product_info представлення було створено.
Ми використаємо наступну команду, якщо хочемо видалити cate_id колонка Продукт стіл:
ALTER TABLE Product DROP COLUMN cate_id;
Вихід
Після виконання команди вище ми отримаємо повідомлення нижче; в cate_id стовпець випав з ст Продукт стіл.
Якщо ми хочемо побачити таблицю в psql, ми використаємо наведену нижче команду
Javatpoint=# d Product;
Як ми бачимо на знімку екрана вище, наведена вище команда видаляє Стовпець Cate_id і включає в себе Cate_id в обмеження зовнішнього ключа.
Зараз ми спробуємо скинути Brand_id колонка від ст Продукт стіл.
ALTER TABLE Product DROP COLUMN Brand_id;
Після того, як ми виконаємо наведену вище команду, PostgreSQL викличе наведену нижче помилку:
У ньому зазначено, що інформація про продукт перегляд використовує стовпець Brand_id з Продукт стіл.
Отже, ми будемо використовувати каскад можливість видалити обидва Brand_id колонка і Product_info переглянути за допомогою наведеної нижче команди:
ALTER TABLE Product DROP COLUMN Brand_id CASCADE;
Коли ми реалізуємо наведену вище команду, вона підніме наведену нижче повідомлення і відпустіть певний стовпець.
Тут ми скинемо обидва list_price і Model_year стовпці в одній команді, і нам потрібно використовувати багаторазовий DROP COLUMN умови, як ми зробили нижче:
ALTER TABLE Product DROP COLUMN List_Price, DROP COLUMN Model_year;
Вихід
Після виконання наведеної вище команди ми отримаємо таке вікно повідомлення: The Стовпці List_price і Model_year були вилучені з Продукт стіл.
Якщо ми хочемо побачити, чи працюють наведені вище операції добре чи ні, ми скористаємося Виберіть команда:
Select * from Product ;
Вихід
Після виконання наведеної вище команди ми отримаємо такий результат: