MySQL змяніць дадаць, каб павялічыць некалькі пазіцый палёў? Падрабязнае тлумачэнне выкарыстання аператара слупка modify

MySQL змяніць дадаць, каб павялічыць некалькі пазіцый поля? Падрабязнае тлумачэнне выкарыстання аператара слупка modify

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 у блогу Чэнь Вэйляна, каб атрымліваць апошнія абнаўленні!

🔔 Будзьце першым, хто атрымае каштоўнае "Кіраўніцтва па выкарыстанні інструмента AI для маркетынгу кантэнту ChatGPT" у верхнім каталогу канала! 🌟
📚 Гэты дапаможнік мае вялікую каштоўнасць, 🌟Гэта рэдкая магчымасць, не прапусціце яе! ⏰⌛💨
Падзяліцеся і лайкайце, калі хочаце!
Ваш абмен і лайкі - наша пастаянная матывацыя!

 

发表 评论

Ваш адрас электроннай пошты не будзе апублікаваны. 必填 项 已 用 * Этыкетка

пракруціць ўверх