information_schema提供了資料庫元資料、統計資料、以及有關MySQL Server的資訊存取(例如:資料庫名或表名,欄位的資料類型和存取權等)。 information_schema函式庫中儲存的資訊也可以稱為MySQL的資料字典或系統目錄。本文主要講述了information_schema庫中包含所有表的字段信息,有興趣的朋友可以了解一下。
sql注入後可以透過該資料庫取得所有資料表的欄位資訊
1.
COLLATIONS表
提供有關每個字元集的排序規則的資訊。 COLLATIONS表包含以下列:
COLLATION_NAME 排序規則名稱。
CHARACTER_SET_NAME 與排序規則關聯的字元集的名稱。
ID 排序規則ID。
IS_DEFAULT 排序規則是否為其字元集的預設值。
IS_COMPILED 字元集是否已編譯到伺服器中。
SORTLEN 這與對字元集中表示的字串進行排序所需的記憶體量有關。
2.
SHOW COLLATION;//也可以查詢到排序規則資訊
#3.
COLLATION_CHARACTER_SET_APPLICABILITY 表
COLLATION_NAME 排序規則名稱。
CHARACTER_SET_NAME 與排序規則關聯的字元集的名稱
4.
COLUMNS 提供資料表中欄位的資訊
TABLE_CATALOG 包含該欄位的資料表所屬的目錄的名稱。該值始終為def。
TABLE_SCHEMA 包含欄位所在資料庫的名稱。
TABLE_NAME 包含欄位所在表格的名稱。
COLUMN_NAME 欄位的名稱。
ORDINAL_POSITION 表中欄位的位置。 ORDINAL_POSITION是必要的,因為你可能想說 ORDER BY ORDINAL_POSITION。與SHOW COLUMNS不同,COLUMNS表中的SELECT沒有自動排序。 show columns的語法是例如:show columns from my_test.user;
COLUMN_DEFAULT 欄位的預設值。如果欄位具有明確預設值NULL,或欄位定義不包含DEFAULT子句,則此值為NULL。
IS_NULLABLE 欄位可為空性。如果NULL值可以儲存在列中,則值為YES,否則為NO。
DATA_TYPE 欄位資料類型。 DATA_TYPE值只是型別名稱,沒有其他資訊。
COLUMN_TYPE 值包含類型名稱以及可能的其他訊息,例如精確度或長度。
CHARACTER_MAXIMUM_LENGTH 對於字串列,最大長度(以字元為單位)。
CHARACTER_OCTET_LENGTH 對於字串列,最大長度(以位元組為單位)。
NUMERIC_PRECISION 對於數字字段,數位精確度。
NUMERIC_SCALE 對於數字字段,數字刻度。
DATETIME_PRECISION 對於時間字段,小數秒精確度。
CHARACTER_SET_NAME 對於字串字段,字元集名稱。
COLLATION_NAME 對於字串字段,排序規則名稱。
COLUMN_TYPE 欄位資料型態。
DATA_TYPE 值只是型別名稱,沒有其他資訊。
COLUMN_TYPE 值包含類型名稱以及可能的其他訊息,例如精確度或長度。
COLUMN_KEY 名稱是否已建立索引
EXTRA 有關給定欄位的任何其他可用資訊。
PRIVILEGES 您對該欄位的權限。
COLUMN_COMMENT 欄位定義中包含的任何註解。
GENERATION_EXPRESSION 對於產生的字段,顯示用於計算列值的表達式.
相關教學:mysql影片教學
#以上是【MySQL】information_schema庫中包含所有表格的欄位資訊的詳細內容。更多資訊請關注PHP中文網其他相關文章!