数据库的基本操作(2)

一、创建数据表

需要注意的是,在操作数据表之前,应该使用“USE 数据库名”指定操作是在哪个数据库中进行,否则会抛出“No database selected”错误。

创建数据表的基本语法格式如下所示:

CREATE TABLE 表名

(

  字段名1,数据类型[完整性约束条件],

字段名2,数据类型[完整性约束条件],

......

字段名n,数据类型[完整性约束条件]

)     

例如下图:

 

为了验证数据表是否创建成功,需要使用SHOW TABLES语句进行查看,具体执行结果如下所示:

 

二、查看数据表

使用SHOW CREATE TABLE查看数据表在MySQL中,SHOW CREATE TABLE语句不仅可以查看创建表时的定义语句,还可以查看表的字符编码。SHOW CREATE TABLE语句的基本语法格式如下所示:

SHOW CREATE TABLE 表名;

在上述格式中,“表名”指的是要查询数据表的名称。

使用SHOW CREATE TABLE语句查看appled表,SQL语句如下所示:

SHOW CREATE TABLE appled;

执行结果如下:

 

在MySQL中,使用DESCRIBE语句可以查看表的字段信息,其中包括字段名、字段类型等信息。DESCRIBE语句的基本语法格式如下所示:

DESCRIBE 表名;

或简写为:

DESC 表名;

使用DESCRIBE语句查看appled表,SQL语句如下所示

DESC appled;

执行结果如下所示:

 

使用DESCRIBE语句查看数据表:

NULL:表示该列是否可以存储NULL值。

Key:表示该列是否已经编制索引。

Default:表示该列是否有默认值。

Extra:表示获取到的与给定列相关的附加信息。

二、修改数据表

(1)    修改表名

在数据库中,不同的数据表是通过表名来区分的。在MySQL中,修改表名的基本语法格式如下所示:

ALTER TABLE 旧表名 RENAME [TO] 新表名;

在上述格式中,“旧表名”指的是修改前的表名,“新表名”指的是修改后的表名,关键字TO是可选的,其在SQL语句中是否出现不会影响语句的执行。

在修改数据库表名之后,用SHOW TABLES语句查看数据库中的所有表,执行结果如下:

 

(2)    修改字段名

数据表中的字段是通过字段名来区分的,基本语法格式如下所示:

ALTER TABLE 表名 CHANGE 旧字段名  新字段名 新数据类型;

将数据表aple中的name字段改为username,数据类型保持不变,SQL语句如下所示:

ALTER TABLE aple CHANGE name username INT(20);

为了验证字段名是否修改成功,通过DECS语句查看aple表的结构,执行结果如下所示:

 

(3)修改字段的类型数据

修改字段的数据类型,就是将字段的数据类型转为另外一种数据类型,基本语法格式如下所示:

ALTER TABLE 表名 MODIFY 字段名  数据类型;

咱们用ALTER语句修改ega字段的数据类型,SQL语句如下所示:

ALTER TABLE aple MODIFY ega CHAR(20);

为了验证id字段的数据类型是否修改成功,再次使用DECS查看aple数据表,执行结果如下:

 

(4)添加字段

在MySQL中,添加字段的基本语法格式如下所示:

ALTER TABLE 表名 ADD  新字段名  数据类型

      [约束条件][FIRST|AFTER 已存在字段名]

在数据表aple中添加一个没有约束条件的INT类型的字段age,SQL语句如下:

ALTER TABLE aple ADD age INT(10);

为了验证字段age是否添加成功,接下来,使用DESC语句查看数据表aple,执行结果如下:

 

(5)删除字段

所谓删除字段指的是将某个字段从表中删除。在MySQL中,删除字段的基本语法格式如下所示:

ALTER TABLE 表名 DROP 字段名;

删除aple表中的age字段,SQL语句如下:

ALTER TABLE aple DROP age;

为了验证age字段是否删除,接下来,使用DESC语句查看aple表,执行结果如下:

 

(6)修改字段的排列位置

在MySQL中,修改字段排列位置的基本语法格式如下:

ALTER TABLE表名 MODIFY 字段名1 数据类型 FIRST|AFTER 字段名2

将数据表aple的username字段修改为表的第一个字段,执行的SQL语句如下:

ALTER TABLE aple MODIFY username INT(20) FIRST;

为了验证username字段是否修改为表的第一个字段,接下来,使用DESC语句查看数据表,执行结果如下:

 

(7)     删除数据表

删除数据表是指删除数据库中已存在的表,在删除数据表的同时,数据表中存储的数据都将被删除。

在MySQL中,直接使用DROP TABLE语句就可以删除没有被其它表关联的数据表,其基本的语法格式如下所示:

DROP TABLE 表名;

删除数据表aple,SQL语句如下:

DROP TABLE aple;

为了验证数据表grade是否被删除成功,使用DESC语句查看数据表,执行结果如下:

 

上述结果可以看出,aple表已经不存在了,说明数据表aple被成功删除了。

三,表的约束

(1)     主键约束

主键约束是通过PRIMARY KEY定义的

在MySQL中,主键约束分为两种,具体如下:

1、单字段主键

2、多字段主键

单字段主键指的是由一个字段构成的主键,其基本的语法格式如下所示

字段名 数据类型  PRIMARY KEY

多字段主键指的是多个字段组合而成的主键,其基本的语法格式如下所示:

PRIMARY KEY (字段名1,字段名2,……字段名n)

(3)    非空约束

非空约束指的是字段的值不能为NULL,在MySQL中,非空约束是通过NOT NULL定义的,其基本的语法格式如下所示:

字段名 数据类型 NOT NULL;

(4)唯一约束

唯一约束用于保证数据表中字段的唯一性,即表中字段的值不能重复出现。唯一约束是通过UNIQUE定义的,其基本的语法格式如下所示:

字段名 数据类型 UNIQUE;

(5)     默认约束

默认约束用于给数据表中的字段指定默认值,即当在表中插入一条新记录时,如果没有给这个字段赋值,那么,数据库系统会自动为这个字段插入默认值。默认值是通过DEFAULT关键字定义的。

默认约束基本的语法格式如下所示:

字段名 数据类型  DEFAULT 默认值;

四、设置表的字段值自动增加

在数据表中,若想为表中插入的新记录自动生成唯一的ID,可以使用AUTO_INCREMENT约束来实现。

AUTO_INCREMENT约束的字段可以是任何整数类型。

默认情况下,该字段的值是从1开始自增的。

使用AUTO_INCREMENT设置表字段值自动增加的基本语法格式如下所示:

字段名 数据类型 AUTO_INCREMENT;

猜你喜欢

转载自www.cnblogs.com/XXxhl/p/11759306.html