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

Як дадаць некалькі палёў з дапамогай аператара MySQL `ALTER ALTER ADD`? Падрабязнае тлумачэнне аператара `MODIUS Column`.

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 (усталёўваецца ў першы слупок) і AFTER field_name (усталёўваецца пасля пэўнага поля), прадстаўленыя MySQL .

Паспрабуйце наступны аператар 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;

Спадзяюся, артыкул «Даданне некалькіх палёў у MySQL з дапамогай ALTER TABLE? Падрабязнае тлумачэнне аператара 'MODIATE COLLECT'», апублікаваны ў блогу Чэня Вэйляна ( https://www.chenweiliang.com/ ), будзе вам карысным.

Не саромейцеся падзяліцца спасылкай на гэты артыкул: https://www.chenweiliang.com/cwl-495.html

Каб адкрыць больш схаваных хітрасцяў🔑, далучайцеся да нашага канала ў Telegram!

Падзяліцеся і пастаўце лайкі, калі вам гэта падабаецца! Вашы акцыі і лайкі - наша пастаянная матывацыя!

 

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

Пракрутка да пачатку