Dengan bantuan arahan ALTER TABLE, anda boleh menukar kedudukan lajur jadual MySQL tanpa kehilangan data. Sintaksnya adalah seperti berikut -
ALTER TABLE yourTableName MODIFY yourColumnName1 data type AFTER yourColumnName2;
Untuk memahami konsep di atas, mari kita buat jadual. Pertanyaan untuk membuat jadual dengan beberapa lajur adalah seperti berikut -
mysql> create table changeColumnPositionDemo −> ( −> StudentId int, −> StudentAddress varchar(200), −> StudentAge int, −> StudentName varchar(200) −> ); Query OK, 0 rows affected (0.72 sec)
Mari masukkan beberapa data ke dalam jadual. Pertanyaan untuk memasukkan rekod adalah seperti berikut-.
mysql> insert into changeColumnPositionDemo values(101,'US',23,'Johnson'); Query OK, 1 row affected (0.13 sec) mysql> insert into changeColumnPositionDemo values(102,'UK',20,'John'); Query OK, 1 row affected (0.19 sec) mysql> insert into changeColumnPositionDemo values(103,'US',22,'Carol'); Query OK, 1 row affected (0.39 sec) mysql> insert into changeColumnPositionDemo values(104,'UK',19,'Sam'); Query OK, 1 row affected (0.18 sec)
Kini anda boleh memaparkan semua rekod dengan bantuan penyata pilih. Pertanyaannya adalah seperti berikut -
mysql> select *from changeColumnPositionDemo;
Berikut adalah output -
+-----------+----------------+------------+-------------+ | StudentId | StudentAddress | StudentAge | StudentName | +-----------+----------------+------------+-------------+ | 101 | U | 23 | Johnson | | 102 | UK | 20 | John | | 103 | US | 22 | Carol | | 104 | UK | 19 | Sam | +-----------+----------------+------------+-------------+ 4 rows in set (0.00 sec)
Berikut adalah pertanyaan untuk menukar kedudukan lajur tanpa kehilangan data. Kami mengalihkan lajur "StudentAddress" selepas lajur "StudentAge" -
mysql> ALTER TABLE changeColumnPositionDemo MODIFY StudentAddress varchar(200) AFTER StudentAge; Query OK, 0 rows affected (2.27 sec) Records: 0 Duplicates: 0 Warnings: 0
Di atas kami tetapkan lajur StudentAddress selepas nama lajur StudentAge.
Berikut ialah pertanyaan untuk menyemak sama ada dua lajur di atas telah berubah tanpa kehilangan data -
mysql> select *from changeColumnPositionDemo;
Berikut ialah output -
+-----------+------------+----------------+-------------+ | StudentId | StudentAge | StudentAddress | StudentName | +-----------+------------+----------------+-------------+ | 101 | 23 | US | Johnson | | 102 | 20 | UK | John | | 103 | 22 | US | Carol | | 104 | 19 | UK | Sam | +-----------+------------+----------------+-------------+ 4 rows in set (0.00 sec)
Atas ialah kandungan terperinci Bagaimana untuk menukar kedudukan lajur jadual MySQL tanpa kehilangan data lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!