Maison  >  Article  >  base de données  >  Renommer toutes les tables et colonnes en minuscules dans MySQL ?

Renommer toutes les tables et colonnes en minuscules dans MySQL ?

WBOY
WBOYavant
2023-08-27 13:41:02736parcourir

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

Vous pouvez y parvenir avec l'aide de INFORMATION_SCHEMA.COLUMNS. La syntaxe est la suivante -

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

Utilisez maintenant une base de données avec deux tables. Le nom de la base de données est le suivant « bothinnodbandmyisam ». La base de données contient les tables suivantes -

  • employee
  • student

employee La description de la table est la suivante -

mysql> desc employee;

Ce qui suit est le résultat. Supposons que la table des employés comporte les colonnes suivantes qui ne sont pas en minuscules -

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

La description de la table des étudiants est la suivante. La requête est la suivante -

mysql> desc student;

Ce qui suit est le résultat. Supposons que la table des étudiants comporte les colonnes suivantes qui ne sont pas en minuscules -

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

Il s'agit de la requête permettant de changer les noms de colonnes de toutes les tables en minuscules. La requête est la suivante -

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';

Ci-dessous se trouve le résultat de la commande ALTER TABLE montrant les noms de colonnes mis à jour -

+------------------------------------------------------------------------+
| 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)

Regardez l'exemple de sortie ci-dessus, tous les noms de colonnes ont été modifiés en minuscules.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer