MySQL数据表使用(SHOW DESC USE等)

使用数据库

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| db_test            |
| db_test_db         |
| mysql              |
| performance_schema |
| sys                |
| test001            |
| test002            |
| test_create        |
| test_create_char   |
| test_db            |
| test_db_d          |
| test_db_ddd        |
| test_time_type     |
+--------------------+
14 rows in set (0.01 sec)

mysql> use test_db;
Database changed

查看当前数据库下的所有表

mysql> show tables;
+-------------------+
| Tables_in_test_db |
+-------------------+
| e_diff            |
| es_diff           |
| s_diff            |
| vc_diff           |
+-------------------+
4 rows in set (0.00 sec)

查看表结构

DESC - 以表格的形式展示表结构

DESCRIBE/DESC 语句会以表格的形式来展示表的字段信息,包括字段名、字段数据类型、是否为主键、是否有默认值等,语法格式如下:

DESCRIBE <表名>;

或简写成:

DESC <表名>;

实例

mysql> desc e_diff;
+-------+-------------------+------+-----+---------+-------+
| Field | Type              | Null | Key | Default | Extra |
+-------+-------------------+------+-----+---------+-------+
| e     | enum('a','b','c') | YES  |     | NULL    |       |
+-------+-------------------+------+-----+---------+-------+
1 row in set (0.00 sec)

mysql> DESCRIBE es_diff;
+-------+--------------------------+------+-----+---------+-------+
| Field | Type                     | Null | Key | Default | Extra |
+-------+--------------------------+------+-----+---------+-------+
| e     | enum('a','b','c')        | YES  |     | NULL    |       |
| s     | set('a','b','c','d','e') | YES  |     | NULL    |       |
+-------+--------------------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

其中,各个字段的含义如下:

  • Null:表示该列是否可以存储 NULL 值。
  • Key:表示该列是否已编制索引。PRI 表示该列是表主键的一部分,UNI 表示该列是 UNIQUE 索引的一部分,MUL 表示在列中某个给定值允许出现多次。
  • Default:表示该列是否有默认值,如果有,值是多少。
  • Extra:表示可以获取的与给定列有关的附加信息,如 AUTO_INCREMENT 等。

SHOW CREATE TABLE - 以SQL语句的形式展示表结构

SHOW CREATE TABLE 命令会以 SQL 语句的形式来展示表信息。和 DESCRIBE 相比,SHOW CREATE TABLE 展示的内容更加丰富,它可以查看表的存储引擎和字符编码;另外,你还可以通过 \g 或者 \G 参数来控制展示格式。

  • \g 的作用是分号和在sql语句中写’;’是等效的
  • \G 的作用是将查到的结构旋转90度变成纵向

SHOW CREATE TABLE 的语法格式如下:

SHOW CREATE TABLE <表名>;
SHOW CREATE TABLE <表名> \g
SHOW CREATE TABLE <表名> \G

在 SHOW CREATE TABLE 语句的结尾处(分号前面)添加\g或者\G参数可以改变展示形式

实例

mysql> show create table vc_diff;
+---------+------------------------------------------------------------+
| Table   | Create Table                                               |
+---------+------------------------------------------------------------+
| vc_diff | CREATE TABLE `vc_diff` (
  `v` varchar(4) DEFAULT NULL,
  `c` char(4) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 |
+---------+--------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show create table vc_diff \g
+---------+------------------------------------------------------------+
| Table   | Create Table                                               |
+---------+------------------------------------------------------------+
| vc_diff | CREATE TABLE `vc_diff` (
  `v` varchar(4) DEFAULT NULL,
  `c` char(4) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 |
+---------+--------------------------------------------------------------+
1 row in set (0.00 sec)

mysql> show create table vc_diff \G
*************************** 1. row ***************************
       Table: vc_diff
Create Table: CREATE TABLE `vc_diff` (
  `v` varchar(4) DEFAULT NULL,
  `c` char(4) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.00 sec)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值