Rumah  >  Artikel  >  pangkalan data  >  Namakan semula semua jadual dan lajur kepada huruf kecil dalam MySQL?

Namakan semula semua jadual dan lajur kepada huruf kecil dalam MySQL?

WBOY
WBOYke hadapan
2023-08-27 13:41:02736semak imbas

在 MySQL 中将所有表和列重命名为小写?

Anda boleh mencapai ini dengan bantuan INFORMATION_SKEMA.COLUMNS. Sintaksnya adalah seperti berikut -

SELECT CONCAT('ALTER TABLE ', TABLE_NAME, ' CHANGE `', COLUMN_NAME, '` `',
LOWER(COLUMN_NAME), '` ', COLUMN_TYPE, ';') AS anyAliasName
FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = ‘yourDatabaseName’;

Sekarang gunakan pangkalan data dengan dua jadual. Nama pangkalan data adalah seperti berikut "bothinnodbandmyisam". Pangkalan data mempunyai jadual berikut -

  • pekerja
  • pelajar

pekerja Penerangan jadual adalah seperti berikut -

mysql> desc employee;

Berikut ialah output. Katakan jadual pekerja mempunyai lajur berikut yang bukan huruf kecil -

+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| EmployeeId   | int(11)     |  YES |     | NULL    |       |
| EmployeeName | varchar(30) | YES  |     | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

Penerangan jadual pelajar adalah seperti berikut. Pertanyaannya adalah seperti berikut -

mysql> desc student;

Berikut ialah outputnya. Katakan jadual pelajar mempunyai lajur berikut yang bukan huruf kecil -

+-------------+-------------+------+-----+---------+-------+
| Field       | Type        | Null | Key | Default | Extra |
+-------------+-------------+------+-----+---------+-------+
| StudentId   | int(11)     | YES  |     | NULL    |       |
| StudentName | varchar(20) | YES  |     | NULL    |       |
+-------------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

Ini ialah pertanyaan untuk menukar nama lajur semua jadual kepada huruf kecil. Pertanyaannya adalah seperti berikut -

mysql> SELECT CONCAT('ALTER TABLE ', TABLE_NAME, ' CHANGE `', COLUMN_NAME, '` `',
   -> LOWER(COLUMN_NAME), '` ', COLUMN_TYPE, ';') AS changeColumnNameToLower
   -> FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'bothinnodbandmyisam';

Di bawah ialah output arahan ALTER TABLE yang menunjukkan nama lajur yang dikemas kini -

+------------------------------------------------------------------------+
| changeColumnNameToLower                                                |
+------------------------------------------------------------------------+
| ALTER TABLE employee CHANGE `EmployeeId` `employeeid` int(11);         |
| ALTER TABLE employee CHANGE `EmployeeName` `employeename` varchar(30); |
| ALTER TABLE student CHANGE `StudentId` `studentid` int(11);            |
| ALTER TABLE student CHANGE `StudentName` `studentname` varchar(20);    |
+------------------------------------------------------------------------+
4 rows in set (0.00 sec)

Lihat pada output sampel di atas, semua nama lajur telah ditukar kepada huruf kecil.

Atas ialah kandungan terperinci Namakan semula semua jadual dan lajur kepada huruf kecil dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam