MySQL 8 DBA基础教程
上QQ阅读APP看书,第一时间看更新

4.3 查看表结构

查看表结构是指查看数据库中已存在的表的定义。查看表结构的语句包括DESCRIBE语句和SHOW CREATE TABLE语句,通过这两个语句可以查看表的字段名、字段的数据类型和完整性约束条件等。本节将会详细介绍查看表结构的方法。

4.3.1 DESCRIBE语句查看表定义

在MySQL中,DESCRIBE语句可以查看表的基本定义,其中包括字段名、字段数据类型、是否为主键和默认值等。DESCRIBE语句的语法形式如下:

     DESCRIBE tablename;

在上述语句中,tablename参数表示所要查看表对象定义信息的名字。

【示例4-3】执行SQL语句DESCRIBE,查看在数据库school中创建名为t_class的表时的定义信息。具体步骤如下:

步骤01 使用USE语句选择数据库school,再使用DESCRIBE语句查看t_class表,具体SQL语句如下(见图4-16和图4-17):

     USE school;
     DESCRIBE t_class;

图4-16 选择数据库

图4-17 DESCRIBE语句查看表定义信息

步骤02 从图4-17中可以看出,通过DESCRIBE语句可以查出表t_class包含classno、cname、loc和stucount字段,同时,结果中显示了字段的数据类型(Type)、是否为空(NULL)、是否为主外键(Key)、默认值(Default)和额外信息(Extra)。DESCRIBE可以缩写成DESC,SQL语句如下:

     DESC t_class;

运行结果如图4-18所示。

图4-18 DESC语句查看表定义信息

从图4-18可以看出,执行DESC语句的结果和执行DESCRIBE语句的结果是一致的。

4.3.2 SHOW CREATE TABLE语句查看表详细定义

创建表后,如果需要查看表结构的详细定义,可以通过执行SQL语句SHOW CREATE TABLE来实现,其语法形式如下:

     SHOW CREATE TABLE tablename;

在上述语句中,tablename参数表示所要查看表定义的名字。

【示例4-4】执行SQL语句SHOW CREATE TABLE,查看数据库school中名为t_class的表的详细信息。具体步骤如下:

步骤01 使用SQL语句USE选择数据库school,SQL语句如下:

     USE school;

执行结果如图4-19所示。

步骤02 执行SQL语句SHOW CREATE TABLE,查看表t_class的定义,具体SQL语句如下:

     SHOW CREATE TABLE t_class \G;

执行效果如图4-20所示。

图4-19 选择数据库

图4-20 查看表详细定义

如图4-19所示,可以使用“;”“\g”和“\G”符号来结束,为了让结果更加美观,便于用户查看,最好使用“\G”符号来结束。

通过上述步骤,即可查看数据库school中表对象t_class的详细定义信息。从图4-20中可以看到,t_class表中包含classno、cname、loc和stucount字段,还可以查出各个字段的数据类型、完整性约束条件。另外,可以查出标识的存储引擎(ENGINE)为InnoDB,字符编码(CHARSET)为UTF8,该语句显示的信息比DESCRIBE语句显示的信息要全面。

4.3.3 通过SQLyog查看表

连接MySQL服务器,在“对象资源管理器”窗口中选中表对象t_class,“信息”窗口会显示表对象t_class的具体信息。在该窗口可以通过两种方式来显示,分别为HTML和“文本/详细”方式。HTML显示方式如图4-21所示。“文本/详细”显示方式如图4-22所示。

图4-21 查看表定义(HTML显示方式)

图4-22 查看表定义(“文本/详细”显示方式)