您现在的位置是:首页 > 数码 > 

查看并修改表结构

2025-07-20 17:55:47
查看并修改表结构 查看表结构  数据表创建完成后,可以通过查看表结构或者建表语句,来确认表的定义是否正确。  1、 查看表的基本结构  查看表结构的关键字为DESCRIBE,语法形式如下:  DESCRIBE table_name;  执行DESCRIBE语句,查看goods表结构,效果如下所示

查看并修改表结构

查看表结构 

数据表创建完成后,可以通过查看表结构或者建表语句,来确认表的定义是否正确。 

1、 查看表的基本结构 

查看表结构的关键字为DESCRIBE,语法形式如下: 

DESCRIBE table_name; 

执行DESCRIBE语句,查看goods表结构,效果如下所示。 

mysql> DESCRIBE goods; 

注意:DESCRIBE可以简写为DESC 

2、查看建表语句 

使用SHOW CREATE TABLE语句可以查看表的建表语句,语法形式如下: 

SHOW CREATE TABLE table_name \G 

执行SHOW CREATE TABLE语句,查看goods表的建表语句,效果如下所示。 

mysql> SHOW CREATE TABLE goods \G 

修改表 

MySQL提供了ALTER关键字来修改表结构。 

1、 修改表名 

修改数据表名称的关键字为REAME,语法形式如下: 

ALTER TABLE old_table_name REAME new_table_name; 

执行SQL语句,将goods表的名称改为tb_goods。 

mysql> ALTER TABLE goods REAME tb_goods; 

Query OK, 0 rows affected (0.01 sec) 

mysql> SHOW TABLES; 

------------------ 

| Tables_in_galaxy | 

------------------ 

| orders           | 

| tb_goods         | 

------------------ 

2 rows in set (0.00 sec) 

2、修改字段数据类型 

修改字段数据类型的关键字为MODIFY,语法形式如下: 

ALTER TABLE table_name MODIFY col_name new_data_type; 

执行SQL语句,将tb_goods表中type字段的数据类型修改为CHAR(0)。 

mysql> ALTER TABLE tb_goods MODIFY type CHAR(0); 

Query OK, 0 rows affected (0.02 sec) 

Records: 0  Duplicates: 0  Warnings: 0 

查看tb_goods表结构 

mysql> DESC tb_goods; 

、 修改字段名 

修改数据表字段名称的关键字为CHAGE,语法形式如下: 

ALTER TABLE table_name CHAGE old_col_name new_col_name data_type; 

执行SQL语句,将tb_goods表中name字段的名称改为g_name。 

mysql> ALTER TABLE tb_goods CHAGE name g_name VARCHAR(0); 

Query OK, 0 rows affected (0.00 sec) 

Records: 0  Duplicates: 0  Warnings: 0 

使用上述语句也可以同时修改数据类型。例如,将g_name字段名称修改为name,数据类型修改为CHAR(0),效果如下。 

mysql> ALTER TABLE tb_goods CHAGE g_name name CHAR(0); 

Query OK, 0 rows affected (0.02 sec) 

Records: 0  Duplicates: 0  Warnings: 0 

4、 添加字段 

常见添加字段的操作一般分为三种情况:在表的最后一列,在表的第一列或者在指定列之后。 

1)在表的最后一列添加字段 

添加字段的关键字为ADD,语法形式如下: 

ALTER TABLE table_name ADD col_name data_type; 

执行SQL语句,在tb_goods表中添加picture字段。 

mysql> ALTER TABLE tb_goods ADD picture VARCHAR(255); 

Query OK, 0 rows affected (0.01 sec) 

Records: 0  Duplicates: 0  Warnings: 0 

2)在表的第一列添加字段 

ALTER TABLE table_name ADD col_name data_type FIRST; 

执行以下SQL语句,在tb_goods表中第一列添加state字段。 

mysql> ALTER TABLE tb_goods ADD state TIYIT(4) FIRST; 

Query OK, 0 rows affected, 1 warning (0.02 sec) 

Records: 0  Duplicates: 0  Warnings: 1 

)在表的指定列之后添加字段 

ALTER TABLE table_name ADD col_name1 data_type AFTER col_name2; 

执行SQL语句,在tb_goods表中num字段之后添加intro字段。 

mysql> ALTER TABLE tb_goods ADD intro TEXT AFTER num; 

Query OK, 0 rows affected (0.00 sec) 

Records: 0  Duplicates: 0  Warnings: 0 

5、 删除字段 

删除数据表字段的关键字为DROP,语法形式如下: 

ALTER TABLE table_name DROP col_name; 

执行以下SQL语句,将tb_goods表中的picture字段删除。 

mysql> ALTER TABLE tb_goods DROP picture; 

Query OK, 0 rows affected (0.01 sec) 

Records: 0  Duplicates: 0  Warnings: 0 

6、 修改字段顺序 

修改字段顺序的关键字为MODIFY,语法形式如下: 

ALTER TABLE table_name MODIFY col_name data_type FIRST | AFTER col_name2; 

执行以下SQL语句,将tb_goods表的state字段位置修改为id字段之后。 

mysql> ALTER TABLE tb_goods MODIFY state TIYIT(4) AFTER id; 

Query OK, 0 rows affected, 1 warning (0.02 sec) 

Records: 0  Duplicates: 0  Warnings: 1 

7、修改存储引擎 

用户可以在创建表时设置存储引擎,也可以在表创建完成之后修改表的存储引擎,语法形式如下: 

ALTER TABLE table_name EGIE=e_name; 

在修改存储引擎之前,往往需要首先查看表当前的存储引擎,语法形式如下: 

SHOW CREATE TABLE table_name \G 

mysql> SHOW CREATE TABLE tb_goods \G 

*************************** 1. row *************************** 

       Table: tb_goods 

Create Table: CREATE TABLE `tb_goods` ( 

  `id` int OT ULL AUTO_ICREMET, 

  `state` tinyint DEFAULT ULL, 

  `type` char(0) DEFAULT ULL, 

  `name` char(0) DEFAULT ULL, 

  `price` decimal(7,2) unsigned DEFAULT ULL, 

  `num` int DEFAULT 0 , 

  `intro` text, 

  `add_time` datetime DEFAULT ULL, 

  PRIMARY KEY (`id`), 

  UIQUE KEY `name` (`name`) 

) EGIE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_0900_ai_ci 

1 row in set (0.00 sec) 

首先执行SQL语句,查看category表的存储引擎,结果如下: 

ALTER TABLE category EGIE=InnoDB; 

mysql> ALTER TABLE category EGIE=InnoDB; 

Query OK, 0 rows affected (0.01 sec) 

Records: 0  Duplicates: 0  Warnings: 0 

删除表 

删除数据表会将表的定义和表中的数据全部删除,因此,用户最好反复确认后再执行此操作。 

1、 删除没有被关联的表 

使用DROP关键字可以一次性删除一个或多个没有被其他表关联的表,语法形式如下: 

DROP TABLE [IF EXISTS] table_name1,table_name2,……,table_namen; 

提示:如果删除的数据表不存在,系统会提示错误信息并中断执行,加上“IF EXISTS”参数后,系统会在执行删除命令之前判断表是否存在,如果表不存在,命令仍可以顺利执行,但系统会提示警告。 

执行SQL语句,删除category表和不存在的tb_good表,并查看数据库中的所有表。 

mysql> DROP TABLE IF EXISTS category; 

2、 删除被其他表关联的主表 

如果数据表之间存在外键关联,那么直接删除主表,系统会提示错误信息,这种情况下,可以先删除与它关联的从表,再删除主表。但有时需要保留从表中的数据,此时需解除主表和从表之间的关联,即删除从表中的外键约束。 

删除外键的语法形式如下: 

ALTER TABLE table_name DROP FOREIG KEY key_name; 

之前创建的tb_goods表和order表存在外键关联,如果直接删除tb_goods表,系统会提示错误,如下所示。 

mysql> DROP TABLE tb_goods; 

ERROR 70 (HY000): Cannot drop table tb_goods referenced by a foreign key ctraint goo_ord on table orders . 

可以执行SQL语句先删除orders表中的外键,然后删除tb_goods表,如下所示。 

ALTER TABLE orders DROP FOREIG KEY goo_ord; 

DROP TABLE tb_goods; 

DROP TABLE tb_orders; 

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/shuma/845681.html

相关标签:无
上传时间: 2024-02-05 13:05:47
留言与评论(共有 20 条评论)
本站网友 雅安地震伤亡
13分钟前 发表
0  Warnings
本站网友 天元商厦
6分钟前 发表
修改表名  修改数据表名称的关键字为REAME,语法形式如下:  ALTER TABLE old_table_name REAME new_table_name;  执行SQL语句,将goods表的名称改为tb_goods
本站网友 如何减手臂
21分钟前 发表
0  Duplicates
本站网友 吸烟者的肺
12分钟前 发表
0  删除表  删除数据表会将表的定义和表中的数据全部删除,因此,用户最好反复确认后再执行此操作
本站网友 模拟炒港股
23分钟前 发表
1  7
本站网友 原色之力
21分钟前 发表
1 warning (0.02 sec)  Records
本站网友 杂酱面
22分钟前 发表
0  Duplicates
本站网友 抗原决定簇
13分钟前 发表
    PRIMARY KEY (`id`)
本站网友 温江房屋出租
17分钟前 发表
  1)在表的最后一列添加字段  添加字段的关键字为ADD,语法形式如下:  ALTER TABLE table_name ADD col_name data_type;  执行SQL语句,在tb_goods表中添加picture字段
本站网友 许昌职业技术学院地址
8分钟前 发表
0 rows affected (0.01 sec)  Records
本站网友 家装油漆十大品牌
22分钟前 发表
查看并修改表结构 查看表结构  数据表创建完成后,可以通过查看表结构或者建表语句,来确认表的定义是否正确
本站网友 发好啦
22分钟前 发表
  mysql> ALTER TABLE tb_goods CHAGE g_name name CHAR(0);  Query OK
本站网友 婚房布置图片
18分钟前 发表
但有时需要保留从表中的数据,此时需解除主表和从表之间的关联,即删除从表中的外键约束
本站网友 edittext
29分钟前 发表
删除被其他表关联的主表  如果数据表之间存在外键关联,那么直接删除主表,系统会提示错误信息,这种情况下,可以先删除与它关联的从表,再删除主表
本站网友 孕检时间表
13分钟前 发表
0 rows affected
本站网友 inputstreamreader
23分钟前 发表
0  Duplicates
本站网友 卧蚕是什么
28分钟前 发表
查看建表语句  使用SHOW CREATE TABLE语句可以查看表的建表语句,语法形式如下:  SHOW CREATE TABLE table_name \G  执行SHOW CREATE TABLE语句,查看goods表的建表语句,效果如下所示
本站网友 乙醇是酒精吗
3分钟前 发表
  mysql> DESCRIBE goods;  注意:DESCRIBE可以简写为DESC  2
本站网友 大悦城电影院
1分钟前 发表
2) unsigned DEFAULT ULL