创建与维护信息管理数据表

目录

1. 设计表结构

2. 创建表

1、使用CREATE TABLE语句创建表

(1)创建表的语法格式

(2)完整性约束条件

        1.列级完整性约束条件

        2.表级完整性约束条件

(3)示例展示

3. 维护表

1、使用DESCRIBE/DESC语句查看表结构

(1)语法格式

(2)示例展示

2、使用SHOW CREATE TABLE语句查看详细表结构

(1)语法格式

(2)示例展示

3、使用SHOW TABLES语句显示表列表

(1)语法格式

(2)示例展示

4、使用ALTER TABLE语句修改表结构

(1)语法格式

(2)语法功能说明

(3)示例展示


1. 设计表结构

1、表是数据库中最重要、最基本的操作对象,是存储数据的基本单位。一个表就是一个关系,表实质上就是行列的集合。

2、在设计表结构时,需要决定表中各列的名称,数据类型,数据长度,列是否允许为空值,表的主键、外键、索引,对数据的限制等内容。

2. 创建表

1、使用CREATE TABLE语句创建表

注:在以下SQL语句的语法格式中,

        “<>”中的内容为必填项,例如:<表名>必须填写一个表名。

        “[]”中的内容为可选填项,根据情况可写可不写。

        “{}”与“|”表明此处为选择项,在给出的选择中选择一项。

(1)创建表的语法格式

CREATE TABLE <表名>

(<字段1> <数据类型1> [<列级完整性约束条件1>],

[<字段2> <数据类型2> [<列级完整性约束条件2>]] [,…],

[<表级完整性约束条件1>,]

[<表级完整性约束条件2>] [,…]

);

(2)完整性约束条件

        1.列级完整性约束条件

        a.PRIMARY KEY:指定该字段为主键

        b.NULL / NOT NULL:指定的字段允许为空/不允许为空,如果没有约束条件,则默认为NULL

        c.UNIQUE:指定字段取值唯一,即每条记录的指定字段的值不能重复

        d.DEFAULT <默认值>:指定设置字段的默认值

        e.AUTO_INCREMENT:指定设置字段的值自动增加

        f.CHECK(条件表达式):用于对输入值进行检验,拒绝接受不满足条件的值。

        2.表级完整性约束条件

        a.PRIMARY  KEY用于定义表级主键约束,语法格式如下:

        CONSTRAINT <约束名> PRIMARY KEY(字段名1,字段名2,…)

        注:当使用多个字段作为表的主键时,使用上述语句设置主键约束。“约束名”可以自行拟定。

        b.FOREIGN KEY用于设置参照完整性规则,即指定某字段为外键,语法格式如下:

        CONSTRAINT <约束名> FOREIGN KEY (<外键>) REFERENCES <被参照表(主键)>

        c.UNIQUE既可用于列级完整性约束,也可用于表级完整性约束,语法格式如下:

        CONSTRAINT <约束名> UNIQUE(<字段名>)

(3)示例展示

其中的“注只是作者帮助理解写的注释

【例1】创建一个学生表student

CREATE TABLE student

(注:使用CREATE TABLE创建名称为student的表)

(sno CHAR(10) PRIMARY KEY,

(注:sno的数据类型为CHAR,数据长度为10,是主键)

sname VARCHAR(8) NOT NULL, 

(注:sname的数据类型为VARCHAR,数据长度为8,不为空)

ssex CHAR(2) DEFAULT '男',

(注:ssex的数据类型为CHAR,数据长度为2,默认为男)

);

【例2】创建course课程关系表和sc成绩关系表

CREATE TABLE course

(cno char(3) NOT NULL,

cname varchar(20) NOT NULL,

cterm tinyint NOT NULL,

CONSTRAINT C1 PRIMARY KEY(cno,cterm)

(注:该句为表级完整性约束条件,使用C1为约束名,将cno、cterm作为该course表的主键)

);

CREATE TABLE sc

(sno char(10) NOT NULL,

cno char(3) NOT NULL,

cterm tinyint NOT NULL,

CONSTRAINT A1 PRIMARY KEY(cno,cterm),

CONSTRAINT A2 FOREIGN KEY(cno,cterm) REFERENCES course (cno,cterm)

(注:使用表级完整性约束条件中的FOREIGN KEY ,指定course表的两个主键 cno、cterm作为该sc表的外键)

);

3. 维护表

1、使用DESCRIBE/DESC语句查看表结构

(1)语法格式

DESCRTBE <表名>;  或  DESC <表名>;

(2)示例展示

【例1】分别用DESCRIBE和DESC语句查看student表和course表的表结构。

DESCRIBE student;

DESC course;

2、使用SHOW CREATE TABLE语句查看详细表结构

(1)语法格式

SHOW CREATE TABLE <表名>[\G];

(2)示例展示

【例2】使用SHOW CREATE TABLE语句查看course表的详细信息。

SHOW CREATE TABLE course;

3、使用SHOW TABLES语句显示表列表

(1)语法格式

SHOW TABLES;

(2)示例展示

【例3】显示gradem数据库中的所有表。

SHOW TABLES;

4、使用ALTER TABLE语句修改表结构

(1)语法格式

ALTER TABLE <表名>

{

[ADD <新字段名> <数据类型> [<列级完整性约束条件>] [FIRST|AFTER 已存在字段名]]

|[MODIFY <字段名1> <新数据类型> [<列级完整性约束条件>][FIRST|AFTER字段名2]]

|[CHANGE <旧字段名> <新字段名> <新数据类型>]

|[DROP <字段名>| <完整性约束名>]

|[RENAME [TO]<新表名>]

|[ENGINE=<更改后的存储引擎名>]

};

(2)语法功能说明

1.ADD:为指定表添加一个新字段,数据类型由用户指定。

2.MODIFY:修改指定表中字段的数据类型或完整性约束条件。

3.CHANGE:重命名指定表中的字段。

4.DROP:删除指定表中不需要的字段或完整性约束。

5.RENAME:重命名指定表的表名。

6.ENGINE:修改指定表的存储结构。

(3)示例展示

【例4】在student表添加数据类型为char、长度10的字段class,表示学生所在班级,新字段添加在“ssex”字段后面。

ALTER TABLE student ADD class char(10) AFTER ssex;

【例5】将sc表中的degree字段的数据类型改为smallint,并放在“class”字段的后面。

ALTER TABLE sc MODIFY degree smallint AFTER class;

【例6】将student表中sbirthday的字段改名为sbirth。

ALTER TABLE student CHANGE sbirthday sbirth DATETIME;

【例7】将sc表的表名改为score。

ALTER TABLE sc RENAME score;

【例8】将student表的存储引擎改为MyISAM。

ALTER TABLE student ENGINE=MyISAM;

【例9】删除sc表的外键约束A2。

ALTER TABLE sc DROP FOREIGN KEY A2;

  • 28
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值