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 中的比較重要的字段:名稱、類(lèi)型、是否為空、鍵、默認(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)字段的名稱、類(lèi)型、鍵、權(quán)限、注釋和其他信息。為了獲取字段名稱,故我腳本中使用這個(gè)作為獲取表結(jié)構(gòu)的方法。
附:information_schema.COLUMNS字段和含義
字段名稱及含義
TABLE_CATALOG表類(lèi)型(沒(méi)搞懂干啥用?)TABLE_SCHEMA所屬庫(kù)名稱TABLE_NAME表名稱COLUMN_NAME字段名稱ORDINAL_POSITION位置序號(hào)COLUMN_DEFAULT默認(rèn)值IS_NULLABLE是否可為空DATA_TYPE數(shù)據(jù)類(lèi)型CHARACTER_MAXIMUM_LENGTH字符串最大長(zhǎng)度(數(shù)值類(lèi)型為空)CHARACTER_OCTET_LENGTH字符串最大存儲(chǔ)長(zhǎng)度(一般與上一字段相同)NUMERIC_PRECISION數(shù)值精度(非數(shù)值類(lèi)型為空)NUMERIC_SCALE數(shù)值小數(shù)位數(shù)(非數(shù)值類(lèi)型為空)DATETIME_PRECISION日期精度CHARACTER_SET_NAME編碼方式COLLATION_NAME排序方式COLUMN_TYPE字段類(lèi)型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ù)類(lèi)型', ? ? CHARACTER_MAXIMUM_LENGTH AS '字符最大長(zhǎng)度', ? ? NUMERIC_PRECISION AS '數(shù)值精度(最大位數(shù))', ? ? NUMERIC_SCALE AS '小數(shù)精度', ? ? COLUMN_TYPE AS '列類(lèi)型', ? ? 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)文章
php 不能連接數(shù)據(jù)庫(kù) php error Can''t connect to local MySQL server
php 不能連接數(shù)據(jù)庫(kù) php error Can't connect to local MySQL server through socket '/tmp/mysql.sock'2011-05-05
MySQL中Binary Log二進(jìn)制日志文件的基本操作命令小結(jié)
這篇文章主要介紹了MySQL中Binary Log二進(jìn)制日志文件的基本操作小結(jié),包括利用二進(jìn)制日志恢復(fù)數(shù)據(jù)的方法,需要的朋友可以參考下2015-12-12
MySQL中基本的用戶和權(quán)限管理方法小結(jié)
這篇文章主要介紹了MySQL中基本的用戶和權(quán)限管理方法小結(jié),是MySQL入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-08-08
mysql如何將表結(jié)構(gòu)導(dǎo)出到excel
這篇文章主要介紹了mysql如何將表結(jié)構(gòu)導(dǎo)出到excel,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下2020-09-09
SQL函數(shù)Group_concat的用法及說(shuō)明
這篇文章主要介紹了SQL函數(shù)Group_concat的用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03

