语句 |
说明 |
SHOW TABLES <表名> |
查看数据库中的表 |
DESC <表名> DESCRIBE <表名> SHOW COLUMNS FROM <表名> |
查看数据表结构 |
SHOW CREATE TABLE <表名> |
查看数据表创建语句 |
查看数据库中的表(SHOW TABLES)
使用 SHWO TABLES 语句可以查看所有存在的数据表,以数据表名显示
语法
SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr] ;
- 查看当前数据库中的所有表
示例
mysql> SHOW TABLES;
+------------------+
| test |
+------------------+
| tb1 |
+------------------+
1 row in set (0.00 sec)
- 查看当前 mysql 数据库中的表
示例
mysql> show tables from mysql;
+--------------------------------+
| Tables_in_mysql |
+--------------------------------+
| columns_priv |
| db |
| func |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| host |
| proc |
| procs_priv |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+--------------------------------+
17 rows in set (0.01 sec)
查看数据表结构(DESCRIBE / DESC / SHOW COLUMNS FROM)
- 使用 DESC 语句可以查看数据表的结构
语法
DESC tb_name ;
DESCRIBE tb_name ;
示例
mysql> DESC test;
+-------+---------------+-------+------+----------+-------------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------+-------+------+----------+-------------------+
| name | varchar(50) | YES | | NULL | |
| pwd | varchar(50) | YES | | NULL | |
| email | varchar(50) | YES | | NULL | |
| id | int(11) | NO | PRI | NULL | auto_increment |
+-------+---------------+-------+------+----------+-------------------+
4 rows in set (0.01 sec)
语法
SHOW COLUMNS FROM tb_name ;
示例
mysql> SHOW COLUMNS FROM test;
+------------+-----------------------+-------+----------+----------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+-----------------------+-------+----------+----------+-------+
| username | varchar(20) | YES | | NULL | |
| age | tinyint(3) unsigned | YES | | NULL | |
| salaty | float(8,2) unsigned | YES | | NULL | |
+------------+-----------------------+-------+----------+----------+-------+
3 rows in set (0.01 sec)
查看数据表创建语句(SHOW CREATE TABLE)
- 使用 SHOW CREATE TABLE 语句可以查看已存在数据表的创建语句,为了打印格式更有可读性,建议在数据表名后加上\G进行换行
语法
SHOW CREATE TABLE tb_name ;
示例
mysql> SHOW CREATE TABLE test\G
*************************** 1. row ***************************
Table : info
Create Table : CREATE TABLE `test` (
`name` varchar(50) DEFAULT NULL,
`pwd` varchar(50) DEFAULT NULL,
`email` varchar(50) DEFAULT NULL,
`id` int(11) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=4323693 DEFAULT CHARSET=gbk
1 row in set (0.00 sec)