Каталог статей
MySQL змінити додати, щоб збільшити кілька позицій поля? Детальне пояснення використання оператора змінення стовпця
MySQL Команда ALTER
Коли нам потрібно змінити назву таблиці даних або змінити поля таблиці даних, нам потрібно використовувати команду MySQL ALTER.
Перш ніж почати цей підручник, давайте створимо таблицю під назвою: testalter_tbl.
root@host# mysql -u root -p password; Enter password:******* mysql> use chenweiliang; Database changed mysql> create table testalter_tbl -> ( -> i INT, -> c CHAR(1) -> ); Query OK, 0 rows affected (0.05 sec) mysql> SHOW COLUMNS FROM testalter_tbl; +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | i | int(11) | YES | | NULL | | | c | char(1) | YES | | NULL | | +-------+---------+------+-----+---------+-------+ 2 rows in set (0.00 sec)
Видалити, додати або змінити поля таблиці
Наступна команда використовує команду ALTER із пропозицією DROP, щоб видалити стовпець i зі створеної вище таблиці:
mysql> ALTER TABLE testalter_tbl DROP i;
DROP не можна використовувати для видалення поля, якщо в таблиці даних залишилося лише одне поле.
Речення ADD використовується в MySQL для додавання стовпців до таблиці даних. Наступний приклад додає поле i до таблиці testalter_tbl і визначає тип даних:
mysql> ALTER TABLE testalter_tbl ADD i INT;
Після виконання наведеної вище команди поле i автоматично додається в кінець полів таблиці даних.
mysql> SHOW COLUMNS FROM testalter_tbl; +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | c | char(1) | YES | | NULL | | | i | int(11) | YES | | NULL | | +-------+---------+------+-----+---------+-------+ 2 rows in set (0.00 sec)
Якщо вам потрібно вказати розташування нового поля, ви можете використати ключове слово FIRST, надане MySQL (setПозиціонуванняперший стовпець), ім’я поля ПІСЛЯ (встановлюється після поля).
Спробуйте наступний оператор ALTER TABLE, а після успішного виконання використовуйте SHOW COLUMNS, щоб переглянути зміни в структурі таблиці:
ALTER TABLE testalter_tbl DROP i; ALTER TABLE testalter_tbl ADD i INT FIRST; ALTER TABLE testalter_tbl DROP i; ALTER TABLE testalter_tbl ADD i INT AFTER c;
Ключові слова FIRST і AFTER використовуються лише в реченні ADD, тому, якщо ви хочете скинути позицію поля таблиці даних, потрібно використовувати DROP, щоб видалити поле, а потім використовувати ADD, щоб додати поле та встановити положення.
Змінити тип і назву поля
Якщо вам потрібно змінити тип і назву поля, ви можете скористатися пропозицією MODIFY або CHANGE у команді ALTER.
Наприклад, щоб змінити тип поля c із CHAR(1) на CHAR(10), виконайте таку команду:
mysql> ALTER TABLE testalter_tbl MODIFY c CHAR(10);
З пропозицією CHANGE синтаксис дуже відрізняється.Одразу після ключового слова CHANGE вказується ім’я поля, яке потрібно змінити, а потім вказується ім’я та тип нового поля.Спробуйте такий приклад:
mysql> ALTER TABLE testalter_tbl CHANGE i j BIGINT;
mysql> ALTER TABLE testalter_tbl CHANGE j j INT;
Вплив ALTER TABLE на нульові значення та значення за замовчуванням
Коли ви змінюєте поле, ви можете вказати, чи включати лише значення, чи встановити значення за замовчуванням.
У наведеному нижче прикладі вказано, що поле j НЕ НУЛЬОВЕ, а значення за замовчуванням — 100.
mysql> ALTER TABLE testalter_tbl -> MODIFY j BIGINT NOT NULL DEFAULT 100;
Якщо ви не встановите значення за замовчуванням, MySQL автоматично встановить для поля значення NULL за замовчуванням.
Змінити значення поля за замовчуванням
Ви можете використовувати ALTER, щоб змінити значення поля за замовчуванням, спробуйте такі приклади:
mysql> ALTER TABLE testalter_tbl ALTER i SET DEFAULT 1000; mysql> SHOW COLUMNS FROM testalter_tbl; +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | c | char(1) | YES | | NULL | | | i | int(11) | YES | | 1000 | | +-------+---------+------+-----+---------+-------+ 2 rows in set (0.00 sec)
Ви також можете використовувати команду ALTER із пропозицією DROP, щоб видалити значення поля за замовчуванням, як у наступному прикладі:
mysql> ALTER TABLE testalter_tbl ALTER i DROP DEFAULT; mysql> SHOW COLUMNS FROM testalter_tbl; +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | c | char(1) | YES | | NULL | | | i | int(11) | YES | | NULL | | +-------+---------+------+-----+---------+-------+ 2 rows in set (0.00 sec) Changing a Table Type:
Змінити тип таблиці даних можна за допомогою команди ALTER і пропозиції TYPE.Спробуйте наступний приклад, де ми змінюємо тип таблиці testalter_tbl на MYISAM:
Примітка:Щоб переглянути тип таблиці даних, ви можете скористатися оператором SHOW TABLE STATUS.
mysql> ALTER TABLE testalter_tbl ENGINE = MYISAM; mysql> SHOW TABLE STATUS LIKE 'testalter_tbl'\G *************************** 1. row **************** Name: testalter_tbl Type: MyISAM Row_format: Fixed Rows: 0 Avg_row_length: 0 Data_length: 0 Max_data_length: 25769803775 Index_length: 1024 Data_free: 0 Auto_increment: NULL Create_time: 2007-06-03 08:04:36 Update_time: 2007-06-03 08:04:36 Check_time: NULL Create_options: Comment: 1 row in set (0.00 sec)
Змінити назву таблиці
Якщо вам потрібно змінити ім’я таблиці даних, для цього можна скористатися пропозицією RENAME в операторі ALTER TABLE.
Спробуйте наступний приклад, щоб перейменувати таблицю даних testalter_tbl на alter_tbl:
mysql> ALTER TABLE testalter_tbl RENAME TO alter_tbl;
Команда ALTER також може бути використана для створення та видалення індексів у таблицях даних MySQL, про що ми познайомимося в наступних розділах.
змінювати інші способи використання
Змініть механізм зберігання: змініть його на myisam
alter table tableName engine=myisam;
Видалити обмеження зовнішнього ключа: keyName — псевдонім зовнішнього ключа
alter table tableName drop foreign key keyName;
Відносна позиція зміненого поля: тут name1 – це поле, яке потрібно змінити, type1 – вихідний тип поля, і ви можете вибрати одне з first і after, які мають бути очевидними, first розміщується першим, а after – розміщується після поля name2
alter table tableName modify name1 type1 first|after name2;
Блог Hope Chen Weiliang ( https://www.chenweiliang.com/ ) поділився "Змінити MySQL додати, щоб збільшити позиції кількох полів? Докладне пояснення використання оператора Modify Column» допоможе вам.
Ласкаво просимо поділитися посиланням на цю статтю:https://www.chenweiliang.com/cwl-495.html
Ласкаво просимо до каналу Telegram у блозі Чень Вейляна, щоб отримувати останні оновлення!
📚 Цей посібник має величезну цінність. 🌟Це рідкісна можливість, не пропустіть її! ⏰⌛💨
Поділіться та вподобайте, якщо вам подобається!
Ваші публікації та лайки є нашою постійною мотивацією!