mysql查看表結構的三種方法總結

 更新時間:2022年07月06日 10:06:55   作者:人若水事如山  
這篇文章主要介紹了mysql查看表結構的三種方法總結,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

mysql查看表結構

1. show create table

show create table 表名稱

這個語句每次本能想出的,語義好記,可以直接查看建表語句,但不便于代碼處理。

2. desc

desc 表名稱

這個語句簡單易用,可以獲取到 COLUMNS 中的比較重要的字段:名稱、類型、是否為空、鍵、默認值、額外信息。但無法獲取字段的注釋。

3. information_schema.COLUMNS

select * from information_schema.COLUMNS where TABLE_SCHEMA = '庫名稱' and TABLE_NAME = '表名稱'

相對show create table而言,相對簡單,信息全面,可以查詢出來字段的名稱、類型、鍵、權限、注釋和其他信息。為了獲取字段名稱,故我腳本中使用這個作為獲取表結構的方法。

附:information_schema.COLUMNS字段和含義

字段名稱及含義

  • TABLE_CATALOG表類型(沒搞懂干啥用?)
  • TABLE_SCHEMA所屬庫名稱
  • TABLE_NAME表名稱
  • COLUMN_NAME字段名稱
  • ORDINAL_POSITION位置序號
  • COLUMN_DEFAULT默認值
  • IS_NULLABLE是否可為空
  • DATA_TYPE數據類型
  • CHARACTER_MAXIMUM_LENGTH字符串最大長度(數值類型為空)
  • CHARACTER_OCTET_LENGTH字符串最大存儲長度(一般與上一字段相同)
  • NUMERIC_PRECISION數值精度(非數值類型為空)
  • NUMERIC_SCALE數值小數位數(非數值類型為空)
  • DATETIME_PRECISION日期精度
  • CHARACTER_SET_NAME編碼方式
  • COLLATION_NAME排序方式
  • COLUMN_TYPE字段類型
  • COLUMN_KEY字段涉及的key(主鍵、唯一鍵等)
  • EXTRA其他(如 auto_increment)
  • PRIVILEGES權限
  • COLUMN_COMMENT字段注釋
  • GENERATION_EXPRESSION代表達式(沒搞懂,mysql可以表繼承?)

獲取所有的表結構及備注

根據庫名導出所有表信息

SELECT
? ? *
FROM
? ? information_schema.`TABLES`
WHERE
? ? TABLE_SCHEMA = 'db_name'

根據庫名導出所有表名及表備注

SELECT
? ? TABLE_NAME,
? ? TABLE_COMMENT
FROM
? ? information_schema.`TABLES`
WHERE
? ? TABLE_SCHEMA = 'db_name';

mysql獲取整個庫的所有表,及表結構

SELECT
? ? TABLE_SCHEMA AS '庫名',
? ? TABLE_NAME AS '表名',
? ? COLUMN_NAME AS '列名',
? ? ORDINAL_POSITION AS '列的排列順序',
? ? COLUMN_DEFAULT AS '默認值',
? ? IS_NULLABLE AS '是否為空',
? ? DATA_TYPE AS '數據類型',
? ? CHARACTER_MAXIMUM_LENGTH AS '字符最大長度',
? ? NUMERIC_PRECISION AS '數值精度(最大位數)',
? ? NUMERIC_SCALE AS '小數精度',
? ? COLUMN_TYPE AS '列類型',
? ? COLUMN_KEY 'KEY',
? ? EXTRA AS '額外說明',
? ? COLUMN_COMMENT AS '注釋'
FROM
? ? information_schema.`COLUMNS`
WHERE
? ? TABLE_SCHEMA = 'db_name'
ORDER BY
? ? TABLE_NAME,
? ? ORDINAL_POSITION;

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論

微信 投稿 腳本任務 在線工具
美丽人妻被按摩中出中文字幕