Heim  >  Artikel  >  Datenbank  >  Wie erkennt MySQL, ob eine bestimmte Spalte in allen Tabellen vorhanden ist?

Wie erkennt MySQL, ob eine bestimmte Spalte in allen Tabellen vorhanden ist?

王林
王林nach vorne
2023-09-01 22:57:03879Durchsuche

Wie erkennt MySQL, ob eine bestimmte Spalte in allen Tabellen vorhanden ist?

Um Spaltennamen zu identifizieren, verwenden Sie INFORMATION_SCHEMA.COLUMNS in MySQL. Hier ist die Syntax: -

select table_name,column_name
from INFORMATION_SCHEMA.COLUMNS
where table_schema = SCHEMA()
andcolumn_name='anyColumnName';

Lassen Sie uns die obige Abfrage implementieren, um eine Spalte anhand ihrer Existenz in allen Tabellen zu identifizieren. Hier finden wir die Existenz der Spalte EmployeeAge -

mysql> select table_name,column_name
   FROM INFORMATION_SCHEMA.COLUMNS
   WHERE table_schema = SCHEMA()
   AND column_name='EmployeeAge';

Dies erzeugt die folgende Ausgabe, die die Tabellen anzeigt mit spezifischer Spalte „EmployeeAge“ −

+---------------+-------------+
| TABLE_NAME    | COLUMN_NAME |
+---------------+-------------+
| demotable1153 | EmployeeAge |
| demotable1297 | EmployeeAge |
| demotable1303 | EmployeeAge |
| demotable1328 | EmployeeAge |
| demotable1378 | EmployeeAge |
| demotable1530 | EmployeeAge |
| demotable1559 | EmployeeAge |
| demotable1586 | EmployeeAge |
| demotable1798 | EmployeeAge |
| demotable1901 | EmployeeAge |
| demotable511  | EmployeeAge |
| demotable912  | EmployeeAge |
+---------------+-------------+
12 rows in set (0.00 sec)

Um das zu beweisen, überprüfen wir die Beschreibung einer der oben genannten Tabellen −

mysql> desc demotable1153;

Dadurch wird die folgende Ausgabe erzeugt, die das Vorhandensein der EmployeeAge-Spalte in demotable1153 zeigt −

+--------------+-------------+------+-----+---------+----------------+
| Field        | Type        | Null | Key | Default | Extra          |
+--------------+-------------+------+-----+---------+----------------+
| EmployeeId   | int(11)     | NO   | PRI | NULL    | auto_increment |
| EmployeeName | varchar(40) | YES  | MUL | NULL    |                |
| EmployeeAge  | int(11)     | YES  |     | NULL    |                |
+--------------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

Das obige ist der detaillierte Inhalt vonWie erkennt MySQL, ob eine bestimmte Spalte in allen Tabellen vorhanden ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen