前言
有時候,需要在
數(shù)據(jù)庫中查詢一些字段的具體信息,而這些字段又存在于不同的表中,那么我們?nèi)绾蝸聿樵兡兀?div style="height:15px;">
在每一個數(shù)據(jù)庫鏈接的information_schema數(shù)據(jù)庫中,存在這樣一張表——COLUMNS,它記錄了這個數(shù)據(jù)庫中所有表的字段信息。
查詢某個特定類型的字段信息
如下:查詢字段類型為decimal的字段信息
Sql語句:
?1
2
3
4
5
6
7
8
9
10
SELECT
TABLE_NAME,
column_name,
DATA_TYPE,
column_comment
FROM
information_schema. COLUMNS
WHERE
TABLE_SCHEMA = 'evshare'
AND DATA_TYPE = 'decimal';
其中
TABLE_SCHEMA 為數(shù)據(jù)庫的名稱(所屬的數(shù)據(jù)庫) TABLE_NAME 為表的名稱 DATA_TYPE 為字段的數(shù)據(jù)類型 column_name 為字段名 column_comment 為字段注釋
在Where的條件語句中,可以加入限制條件。
結(jié)果如下:
查詢注釋亂碼的字段信息
如果需要查詢數(shù)據(jù)庫中所有亂碼的字段信息,那么可以對以上的Sql稍稍改進:
?1
2
3
4
5
6
7
8
9
10
SELECT
TABLE_NAME,
column_name,
DATA_TYPE,
column_comment
FROM
information_schema. COLUMNS
WHERE
TABLE_SCHEMA = 'evshare'
AND column_comment LIKE '%?%';
結(jié)果如下:可以看到這個evshare數(shù)據(jù)庫中,所有表的亂碼字段都已顯示
原文地址:
https://www.2cto.com/database/201708/666989.html