Іноді наша назва стовпця не має сенсу, тому потрібно перейменувати або змінити назву стовпця. MySQL надає корисний синтаксис, який може перейменувати один або більше стовпців у таблиці. Перш ніж перейменувати стовпець, необхідно мати кілька привілеїв, наприклад привілеї операторів ALTER і DROP.
MySQL може перейменувати назву стовпця двома способами:
- Використання оператора CHANGE
- Використання оператора RENAME
Використання оператора CHANGE:
Нижче наведено синтаксис, який ілюструє перейменування стовпця за допомогою оператора CHANGE:
ALTER TABLE table_name CHANGE COLUMN old_column_name new_column_name Data Type;
У цьому синтаксисі ми бачимо, що може знадобитися повторна специфікація всіх атрибутів стовпців. Цей синтаксис також може дозволити нам змінювати типи даних стовпця. Але іноді оператор CHANGE може мати такі недоліки:
- Уся інформація про атрибути стовпців може бути недоступна програмі для перейменування.
- Існує ризик випадкової зміни типу даних, що може призвести до втрати даних програми.
приклад
Давайте розберемося, як працює оператор CHANGE MySQL щоб перейменувати стовпець за допомогою різних прикладів. Припустимо, у нас є таблиця з назвою баланс який містить такі дані:
З якоїсь причини нам потрібно змінити ім’я стовпця account_num разом із його типом даних . У цьому випадку ми спочатку перевіряємо структуру таблиці за допомогою ОПИСУЙТЕ заяву наступного змісту:
На цьому зображенні ми бачимо, що тип даних імені стовпця account_num є внутр . І ми хочемо змінити назву цього стовпця на номер рахунку і його тип даних як int до varchar . Таким чином, ми можемо виконати наведений нижче оператор, щоб зробити це:
бінарне дерево проти bst
mysql> ALTER TABLE balance CHANGE COLUMN account_num account_no VARCHAR(25);
Після виконання наведеної вище команди ми можемо перевірити це, використовуючи ще раз оператор DESCRIBE. На наведеному нижче зображенні назву стовпця account_num і його тип даних успішно змінено.
Використання оператора RENAME:
Щоб усунути недолік оператора CHANGE, MySQL запропонував наступний синтаксис, який ілюструє зміну назви стовпця за допомогою оператора RENAME:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
приклад
Давайте зрозуміємо, як оператор RENAME працює в MySQL для зміни імені стовпця на різних прикладах. Припустимо, у нас є таблиця з назвою клієнт який містить такі дані:
Припустімо, ми хочемо змінити назву стовпця обліковий запис номер рахунку без зміни типів даних. Ми можемо зробити це, виконавши наведений нижче оператор:
mysql> ALTER TABLE customer RENAME COLUMN account to account_no;
Після виконання наведеної вище команди ми можемо перевірити це за допомогою ВИБРАТИ заява знову. На зображенні нижче обліковий запис імені стовпця успішно змінено.
Перейменування кількох стовпців
MySQL також дозволяє нам змінювати кілька імен стовпців в одному операторі. Якщо ми хочемо перейменувати кілька імен стовпців, ми можемо використати наведений нижче синтаксис:
ALTER TABLE table_name CHANGE old_column_name1 new_column_name1 Data Type, CHANGE old_column_name2 new_column_name2 Data Type, ... ... CHANGE old_column_nameN new_column_nameN Data Type;
АБО
ALTER TABLE table_name RENAME COLUMN old_column_name1 TO new_column_name1, RENAME COLUMN old_column_name2 TO new_column_name2, ... ... RENAME COLUMN old_column_nameN TO new_column_nameN;
приклад
Припустимо, ми хочемо змінитися імена стовпців id і customer_name від стіл клієнтів . Щоб змінити кілька імен стовпців в одному операторі, ми можемо використати цей оператор таким чином:
Команди sql ddl
mysql> ALTER TABLE customer CHANGE id cust_id int, CHANGE customer_name cust_name varchar(45);
Після виконання наведеної вище команди ми можемо перевірити її, використовуючи ще раз оператор SELECT. На наведеному нижче зображенні ідентифікатор імені стовпця та ім’я клієнта успішно змінено:
Давайте знову змінимо ім’я стовпця, що зараз змінюється, за допомогою оператора RENAME COLUMN наступним чином:
mysql> ALTER TABLE customer RENAME COLUMN cust_id TO id, RENAME COLUMN cust_name TO customer_name;
Після виконання наведеної вище команди ми можемо перевірити це, використовуючи знову оператор DESCRIBE. На зображенні нижче ім'я стовпця cust_id і cust_name успішно змінено:
У цій статті ми ознайомилися зі стовпцем MySQL RENAME і як змінити ім’я стовпця у вказаній таблиці разом із прикладом запиту для кращого розуміння.