mysql查看表結(jié)構(gòu)的三種方法總結(jié)
mysql查看表結(jié)構(gòu)
1. show create table
show create table 表名稱
這個(gè)語(yǔ)句每次本能想出的,語(yǔ)義好記,可以直接查看建表語(yǔ)句,但不便于代碼處理。
2. desc
desc 表名稱
這個(gè)語(yǔ)句簡(jiǎn)單易用,可以獲取到 COLUMNS 中的比較重要的字段:名稱、類型、是否為空、鍵、默認(rèn)值、額外信息。但無(wú)法獲取字段的注釋。
3. information_schema.COLUMNS
select * from information_schema.COLUMNS where TABLE_SCHEMA = '庫(kù)名稱' and TABLE_NAME = '表名稱'
相對(duì)show create table而言,相對(duì)簡(jiǎn)單,信息全面,可以查詢出來(lái)字段的名稱、類型、鍵、權(quán)限、注釋和其他信息。為了獲取字段名稱,故我腳本中使用這個(gè)作為獲取表結(jié)構(gòu)的方法。
附:information_schema.COLUMNS字段和含義
字段名稱及含義
TABLE_CATALOG
表類型(沒(méi)搞懂干啥用?)TABLE_SCHEMA
所屬庫(kù)名稱TABLE_NAME
表名稱COLUMN_NAME
字段名稱ORDINAL_POSITION
位置序號(hào)COLUMN_DEFAULT
默認(rèn)值IS_NULLABLE
是否可為空DATA_TYPE
數(shù)據(jù)類型CHARACTER_MAXIMUM_LENGTH
字符串最大長(zhǎng)度(數(shù)值類型為空)CHARACTER_OCTET_LENGTH
字符串最大存儲(chǔ)長(zhǎng)度(一般與上一字段相同)NUMERIC_PRECISION
數(shù)值精度(非數(shù)值類型為空)NUMERIC_SCALE
數(shù)值小數(shù)位數(shù)(非數(shù)值類型為空)DATETIME_PRECISION
日期精度CHARACTER_SET_NAME
編碼方式COLLATION_NAME
排序方式COLUMN_TYPE
字段類型COLUMN_KEY
字段涉及的key(主鍵、唯一鍵等)EXTRA
其他(如 auto_increment)PRIVILEGES
權(quán)限COLUMN_COMMENT
字段注釋GENERATION_EXPRESSION
代表達(dá)式(沒(méi)搞懂,mysql可以表繼承?)
獲取所有的表結(jié)構(gòu)及備注
根據(jù)庫(kù)名導(dǎo)出所有表信息
SELECT ? ? * FROM ? ? information_schema.`TABLES` WHERE ? ? TABLE_SCHEMA = 'db_name'
根據(jù)庫(kù)名導(dǎo)出所有表名及表備注
SELECT ? ? TABLE_NAME, ? ? TABLE_COMMENT FROM ? ? information_schema.`TABLES` WHERE ? ? TABLE_SCHEMA = 'db_name';
mysql獲取整個(gè)庫(kù)的所有表,及表結(jié)構(gòu)
SELECT ? ? TABLE_SCHEMA AS '庫(kù)名', ? ? TABLE_NAME AS '表名', ? ? COLUMN_NAME AS '列名', ? ? ORDINAL_POSITION AS '列的排列順序', ? ? COLUMN_DEFAULT AS '默認(rèn)值', ? ? IS_NULLABLE AS '是否為空', ? ? DATA_TYPE AS '數(shù)據(jù)類型', ? ? CHARACTER_MAXIMUM_LENGTH AS '字符最大長(zhǎng)度', ? ? NUMERIC_PRECISION AS '數(shù)值精度(最大位數(shù))', ? ? NUMERIC_SCALE AS '小數(shù)精度', ? ? COLUMN_TYPE AS '列類型', ? ? COLUMN_KEY 'KEY', ? ? EXTRA AS '額外說(shuō)明', ? ? COLUMN_COMMENT AS '注釋' FROM ? ? information_schema.`COLUMNS` WHERE ? ? TABLE_SCHEMA = 'db_name' ORDER BY ? ? TABLE_NAME, ? ? ORDINAL_POSITION;
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
實(shí)現(xiàn)數(shù)據(jù)庫(kù)水平切分的兩個(gè)思路
今天小編就為大家分享一篇關(guān)于實(shí)現(xiàn)數(shù)據(jù)庫(kù)水平切分的兩個(gè)思路,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-03-03解說(shuō)mysql之binlog日志以及利用binlog日志恢復(fù)數(shù)據(jù)的方法
下面小編就為大家?guī)?lái)一篇解說(shuō)mysql之binlog日志以及利用binlog日志恢復(fù)數(shù)據(jù)的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03MySQL表操作插入數(shù)據(jù)insert語(yǔ)句學(xué)習(xí)(小白入門篇)
這篇文章主要為大家介紹了MySQL表操作插入數(shù)據(jù)insert語(yǔ)句學(xué)習(xí)小白入門篇,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05簡(jiǎn)單講解sql語(yǔ)句中的group by的使用方法
掌握sql語(yǔ)句中g(shù)roup by的使用方法會(huì)對(duì)我們的工作效率有很大的提升,下面小編來(lái)和大家一起簡(jiǎn)單學(xué)習(xí)一下2019-05-05解決mysql錯(cuò)誤:Subquery?returns?more?than?1?row問(wèn)題
這篇文章主要介紹了解決mysql錯(cuò)誤:Subquery?returns?more?than?1?row問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05