MySQL alter add za povećanje više pozicija polja? Detaljno objašnjenje korištenja naredbe modify column

MySQL alter dodati za povećanje više pozicija polja? Detaljno objašnjenje korištenja naredbe modify column

MySQL naredba ALTER

Kada trebamo izmijeniti naziv podatkovne tablice ili izmijeniti polja podatkovne tablice, trebamo koristiti naredbu MySQL ALTER.

Prije nego što započnemo ovaj vodič, kreirajmo tablicu pod nazivom: 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)

Brisanje, dodavanje ili izmjena polja tablice

Sljedeća naredba koristi naredbu ALTER s klauzulom DROP za ispuštanje stupca i tablice stvorene iznad:

mysql> ALTER TABLE testalter_tbl  DROP i;

DROP se ne može koristiti za brisanje polja ako je u podatkovnoj tablici ostalo samo jedno polje.

Klauzula ADD koristi se u MySQL-u za dodavanje stupaca u podatkovnu tablicu. Sljedeći primjer dodaje polje i u tablicu testalter_tbl i definira tip podataka:

mysql> ALTER TABLE testalter_tbl ADD i INT;

Nakon izvršenja gornje naredbe, polje i automatski se dodaje na kraj polja podatkovne tablice.

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)

Ako trebate navesti lokaciju novog polja, možete koristiti ključnu riječ FIRST koju pruža MySQL (setPozicioniranjeprvi stupac), AFTER naziv polja (postavljen nakon polja).

Isprobajte sljedeću naredbu ALTER TABLE i nakon uspješnog izvođenja upotrijebite SHOW COLUMNS da vidite promjene u strukturi tablice:

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;

Ključne riječi FIRST i AFTER koriste se samo u klauzuli ADD, pa ako želite poništiti položaj polja podatkovne tablice, trebate koristiti DROP za brisanje polja, a zatim koristiti ADD za dodavanje polja i postavljanje položaja.


Izmijenite vrstu i naziv polja

Ako trebate izmijeniti vrstu i naziv polja, možete koristiti klauzulu MODIFY ili CHANGE u naredbi ALTER.

Na primjer, da biste promijenili vrstu polja c iz CHAR(1) u CHAR(10), izvršite sljedeću naredbu:

mysql> ALTER TABLE testalter_tbl MODIFY c CHAR(10);

S klauzulom CHANGE sintaksa je vrlo različita.Odmah nakon ključne riječi CHANGE nalazi se naziv polja koje želite izmijeniti, a zatim navedite novi naziv polja i vrstu.Pokušajte sa sljedećim primjerom:

mysql> ALTER TABLE testalter_tbl CHANGE i j BIGINT;

mysql> ALTER TABLE testalter_tbl CHANGE j j INT;

Učinak ALTER TABLE na Null i zadane vrijednosti

Kada izmijenite polje, možete odrediti želite li samo uključiti ili želite postaviti zadanu vrijednost.

Sljedeći primjer specificira da polje j NIJE NULL i da je zadana vrijednost 100.

mysql> ALTER TABLE testalter_tbl 
    -> MODIFY j BIGINT NOT NULL DEFAULT 100;

Ako ne postavite zadanu vrijednost, MySQL će automatski postaviti polje na NULL prema zadanim postavkama.


Izmijenite zadanu vrijednost polja

Možete koristiti ALTER za promjenu zadane vrijednosti polja, pokušajte sa sljedećim primjerima:

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)

Također možete koristiti naredbu ALTER s klauzulom DROP za uklanjanje zadane vrijednosti polja, kao u sljedećem primjeru:

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:

Izmjena tipa podatkovne tablice može se izvršiti pomoću naredbe ALTER i klauzule TYPE.Pokušajte sa sljedećim primjerom, gdje mijenjamo tip tablice testalter_tbl u MYISAM:

Napomena:Za pregled tipa podatkovne tablice, možete koristiti naredbu 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)

Izmijenite naziv tablice

Ako trebate izmijeniti naziv podatkovne tablice, možete koristiti klauzulu RENAME u izjavi ALTER TABLE da to učinite.

Pokušajte sa sljedećim primjerom preimenovati podatkovnu tablicu testalter_tbl u alter_tbl:

mysql> ALTER TABLE testalter_tbl RENAME TO alter_tbl;

Naredba ALTER također se može koristiti za kreiranje i brisanje indeksa na MySQL podatkovnim tablicama, što ćemo predstaviti u sljedećim poglavljima.

mijenjati druge namjene

Izmijenite mehanizam za pohranu: izmijenite ga u myisam

alter table tableName engine=myisam;

Uklonite ograničenje stranog ključa: keyName je alias stranog ključa

alter table tableName drop foreign key keyName;

Relativni položaj modificiranog polja: ovdje name1 je polje koje želite modificirati, type1 je izvorni tip polja, a možete odabrati jedan od first i after, što bi trebalo biti očito, first se stavlja na prvo mjesto, a after je postavljeno iza polja name2

alter table tableName modify name1 type1 first|after name2;

Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) shared "MySQL alter add za povećanje više pozicija polja? Detaljno objašnjenje upotrebe naredbe Modify Column" vam može pomoći.

Dobrodošli da podijelite vezu ovog članka:https://www.chenweiliang.com/cwl-495.html

Dobro došli na Telegram kanal Chen Weiliangovog bloga da dobijete najnovija ažuriranja!

🔔 Budite prvi koji će dobiti vrijedan "Vodič za korištenje AI alata za marketing sadržaja ChatGPT" u direktoriju na vrhu kanala! 🌟
📚 Ovaj vodič ima veliku vrijednost, 🌟 Ovo je rijetka prilika, nemojte je propustiti! ⏰⌛💨
Podijelite i lajkajte ako vam se sviđa!
Vaše dijeljenje i lajkovi naša su stalna motivacija!

 

发表 评论

Vaša email adresa neće biti objavljena. Koriste se obavezna polja * Označiti

pomaknite se na vrh