查看数据库中的数据表
在MySQL中创建好一个数据库后,可以使用 SHOW TABLES 语句查看当前数据库中的表,例如:
查看名为onlinedb数据库下的数据表:
(1)使用 USE 语句将onlinedb设为当前数据表.其中这个 “ Database changed” 表示数据库切换成功。
(2)查看数据表。
可以看到我这数据库中有四个数据表,如果在查看数据表示出现“Empty set”这表示这份数据库中是为一个空集,也就是没有数据表。
在数据库中创建数据表
接下来使用 CREATE TABLE 语句创建数据表:
格式如下:
CREATE [TEMPORARY] TABLE 表名
(
字段定义1,
字段定义2,
…
字段定义N
);
其中:
- TEMPORARY:使用该关键字表示创建的表为临时表。
- 字段定义:数据表中的字段;包括字段名,数据类型,是否允许为空,指定默认值、主键约束、唯一性约束、注释字段、是否伟外键以及字段类型的属性等‘
字段定义格式:字段名 数据类型 [NOT NULL | NULL] [DEFAULT 默认值] [AUTO_INCREMENT] [ UNIQUE KEY | PRIMARY KEY] [COMMENY “字符串”] [外键定义]
其中:
- NULL (NOT NULL):表示字段是否可以为空。
- DEFUALT:指定字段的默认值。
- AUTO_INCREMENT:设置字段为自增,只有整型类型的字段才能设置自增。自整默认从1开始,每个表只能有一个自增字段。
- UNIQUE KEY:唯一性约束
- PRIMARY KEY:主键约束。
- COMMENT:注释字段。
- 外键定义:外键约束
例如:我这里创建一个叫test的数据表:
然后查看成功没
可以看到我们这里创建好的名为test的数据表;
查看数据表结构
如果想查看该数据表就使用 DESCRIBE 表名;
其中:这里的DESCRIBE 也可以缩写为DESC。
使用 \G 查看test数据表结构,使纵向输出表结构:
使用 SHOW CREATE TABLE 表名 查看数据表的详情定义、数据表默认的存储引擎和字符编码。例如:
这里在后面加上 \G(纵向输出) 会看起整洁点:
数据表的修改
1. 修改数据表的名
使用:**ALTER TABLE 原表名 RENAME [TO] 新表名;**修改数据表的名;例如我把test修改成tests:
2. 修改数据表中的字段
使用:ALTER TABLE 表名 CHANGE 原字段名 新字段名 新数据类型;来修改数据表中的字段,例如我这里把UPWD修改成PWD,数据类型设置为varchar(30):
注意:在修改字段时,必须指定新字段的数据类型,即使新字段的类型与原类型相同。
3. 只修改字段的数据类型
使用 ALTER TABLE 表名 MODIFY 字段名 新数据类型只修改字段的数据类型;例如我这里把PWD数据类型设置为varchar(20);
4. 修改字段的排列位置
使用ALTER TABLE 表名 MODIFY 字段1 数据类型 FIRST | AFTER 字段名2修改字段的排列位置,例如这里把UNAME和PWD位置调换:
5. 添加数据表中的字段
使用:ALTER TABLE 表名 ADD 字段名 数据类型;例如添加一个UTIME字段:
6. 删除字段
使用:ALTER TABLE 表名 DROP 字段名删除字段,例如删除刚刚添加的UTIME字段:
6、修改表的存储引擎
使用:**ALTER TABLE 表名 ENGINE=存储引擎名;**修改数据表的存储引擎,例如把TESTS数据表的存储引擎设置为MyISAM:
复制表
1、复制表结构及数据到新表
使用:CREATE TABLE 新表名 SELECT * FROM 原表名; 复制表结构及数据到新表,例如将TESTS表复制到TEST表:
2、只复制表结构到新表
使用:CREATE TABLE 新表名 SELECT * FROM 原表名 WHERE FALSE; 或者CREATE TABLE 新表名 LIKE 原表名; 来只复制表结构到新表。
3、复制表的部分字段及数据到新表
使用:CREATE TABLE 新表名 AS(SELECT 字段1,字段2,…FROM 原表名) 复制表的部分字段及数据到新表,例如复制TESTS的UNAME和PWD复制到TESTSS中:
删除表
使用DROP TABLE 表名; 删除表,例如删除TESTS数据表:
也可以同时删除数据表,例如t同时删除TEST和TESTSS数据表: