MySQL го менува додавањето за зголемување на повеќе позиции на полиња? Детално објаснување за употребата на измената на изјавата на колоната

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 (поставетеПозиционирањепрва колона), ПО името на полето (поставено по поле).

Обидете се со следната изјава 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 НЕ е NULL, а стандардната вредност е 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 е полето што треба да се измени, тип1 е оригиналниот тип на полето, може да се избере прво и потоа, што треба да биде очигледно, прво се става прво, а потоа се става по името2. Поле

alter table tableName modify name1 type1 first|after name2;

Блог на Hope Chen Weiliang ( https://www.chenweiliang.com/ ) сподели „MySQL измени додаде за зголемување на повеќе позиции на полиња? Детално објаснување за употребата на Изјавата за промена на колоната“ е од помош за вас.

Добредојдовте да ја споделите врската од оваа статија:https://www.chenweiliang.com/cwl-495.html

Добредојдовте на Телеграмскиот канал на блогот на Чен Веилијанг за да ги добиете најновите ажурирања!

🔔 Бидете први што ќе го добиете вредниот „Водич за употреба на алатката за AI за маркетинг на содржина на ChatGPT“ во горниот директориум на каналот! 🌟
📚 Овој водич содржи огромна вредност, 🌟Ова е ретка можност, не ја пропуштајте! ⏰⌛💨
Споделете и лајкнете ако ви се допаѓа!
Вашето споделување и лајкови се наша континуирана мотивација!

 

评论

Вашата адреса за е-пошта нема да биде објавена. Се користат задолжителните полиња * Етикета

скролувајте до врвот