数据库一 数据库的建立—DDL&DML

【实验名称】:数据库的建立—DDL&DML

 

【实验目标】:

(1)   使用任何一种交互工具创建DDL脚本,包括创建、修改、删除、展示表结构,字段类型的指定及修改,主键、候选键和外键的指定;

(2)   创建、删除索引;

(3)   创建、删除视图;

(4)   数据的插、删、改等操作;

【实验具体要求】:

  1. 使用sql语句创建所有的表;
  2. 使用alter命令修改表结构,删除教师表中的“title” 字段,然后再添加到表中;修改学生表中的“sex” 字段的类型为char(2);
  3. 在教师表中添加任意一条数据,然后添加类型为char(2)的‘sex‘字段,该字段不能为空,默认值为“m”,添加是否成功,如果失败分析失败的原因并进行必要的操作使‘sex’字段添加成功;
  4. 在请假单表上为lessonNum列创建索引;在学生选课表中依据“studentNum”和“lessonNum”字段创建索引;
  5. 使用sql语句查询所有创建表的表结构;
  6. 将补充资料中提供的数据插入到相应的表中;
  7. 删除学生表中studentNum为“200101”的学生记录,如果不能请分析原因;
  8. 将课程号3的课程的学分更新为4分,将课程号4的课程的学分更新为1分,将课程号1的课程名称更新为“高级语言程序设计”;
  9. 创建学生选课视图v_stu_lesson,字段包括学号、学生姓名、课程号、课程名称、学分、任课教师工号、任课教师姓名;

【实验步骤】:

使用sql语句创建所有的表;

数据库一 数据库的建立—DDL&DML_第1张图片

数据库一 数据库的建立—DDL&DML_第2张图片

数据库一 数据库的建立—DDL&DML_第3张图片

数据库一 数据库的建立—DDL&DML_第4张图片

数据库一 数据库的建立—DDL&DML_第5张图片

数据库一 数据库的建立—DDL&DML_第6张图片

2. 使用alter命令修改表结构,删除教师表中的“title” 字段,然后再添加到表中;修改学生表中的“sex” 字段的类型为char(2);

代码如下:

数据库一 数据库的建立—DDL&DML_第7张图片

运行结果:

数据库一 数据库的建立—DDL&DML_第8张图片    数据库一 数据库的建立—DDL&DML_第9张图片

3. 在教师表中添加任意一条数据,然后添加类型为char(2)的‘sex‘字段,该字段不能为空,默认值为“m”,添加是否成功,如果失败分析失败的原因并进行必要的操作使‘sex’字段添加成功;

①添加一条数据 ('1','刘波','男','教授');

代码如下:

数据库一 数据库的建立—DDL&DML_第10张图片

运行结果:

数据库一 数据库的建立—DDL&DML_第11张图片

②添加类型为char(2)的‘sex‘字段,该字段不能为空,默认值为“m”

代码如下:

数据库一 数据库的建立—DDL&DML_第12张图片

添加失败,报错:

可以看到原本的teacher表中就有sex

数据库一 数据库的建立—DDL&DML_第13张图片

所以错误原因是出现了字段重复。需要先删去原本的sex字段,再进行添加。

数据库一 数据库的建立—DDL&DML_第14张图片

4. 在请假单表上为lessonNum列创建索引;在学生选课表中依据“studentNum”和“lessonNum”字段创建索引;

代码如下:

使用sql语句查询所有创建表的表结构;

代码如下:

数据库一 数据库的建立—DDL&DML_第15张图片

数据库一 数据库的建立—DDL&DML_第16张图片

6. 将补充资料中提供的数据插入到相应的表中;

数据库一 数据库的建立—DDL&DML_第17张图片

7. 删除学生表中studentNum为“200101”的学生记录,如果不能请分析原因

出现这种错误的原因是,studentNum同时也是其他表的外键,而在删除操作时会自动检查外链。

解决方法:
不检查外链,在将执行语句前加上下句:
SET FOREIGN_KEY_CHECKS = 0;

8.将课程号3的课程的学分更新为4分,将课程号4的课程的学分更新为1分,将课程号1的课程名称更新为“高级语言程序设计”;

①课程号3的课程的学分更新为4分

②将课程号4的课程的学分更新为1分

数据库一 数据库的建立—DDL&DML_第18张图片

③将课程号1的课程名称更新为“高级语言程序设计”

数据库一 数据库的建立—DDL&DML_第19张图片

修改结果如下:

数据库一 数据库的建立—DDL&DML_第20张图片

9.创建学生选课视图v_stu_lesson,字段包括学号、学生姓名、课程号、课程名称、学分、任课教师工号、任课教师姓名;

数据库一 数据库的建立—DDL&DML_第21张图片

创建结果如下:

数据库一 数据库的建立—DDL&DML_第22张图片

【小结】:

知识总结:

1.创建表CREATE TABLE

CREATE TABLE “表格名”

(“栏位1”“栏位1资料种类”,

“栏位2”“栏位2资料种类”,

……)

2.创建视图CREATE VIEW

视图可以当做虚拟表格,与表格不同的是,表格中有实际存储的资料,而视图是建立在表格之上的一个架构,其本身不实际存储资料。

CREATE VIEW “VIEW_NAME”AS “SQL语句”

3.创建索引CREATE INDEX

索引可以帮助快速查找资料。索引的存在,数据库系统可以先从这个索引找出需要的资料在表格的位置,在进行抓取。

CREATE INDEX “INDEX_NAME”ON “TABLE_NAME”(COLUMN_NAME)

4.更改表结构ALTER TABLE

ALTER TABLE “TABLE_NAME”[改变方式]

具体操作可以包括:增加栏位ADD,删除栏位DROP,改变栏位名称CHANGE和改变栏位种类MODIFY。

5.删除表格DROP TABLE

DROP TABLE “表格名”

6.修改表格UPDATE

使用UPDATA指令,可以修改表格中的资料。

UPDATE“表格名”

SET “栏位1”=[新值]

WHERE {条件}

7.插入资料INSERT INTO

加入一些资料进入表格

INSERT INTO “表格名”(“栏位1”,“栏位2”,……)

VALUES(“值1”,“值2”,…)

8.删除资料DELETE FROM

有时需要直接从数据库中去除一些资料。可以使用DELETE FROM实现。

DELETE FROM “表格名”

WHERE{条件}

9.限制条件CONSTRAINT

NOT NULL:不允许一个栏位含有NULL值。

UNIQUE:保障一个栏位中的所有资料都是不一样的值。

CHECK:限制保障一个栏位的所有资料符合某些条件。

PRIMARY KEY:主键

FOREIGN KEY:外键

你可能感兴趣的:(数据库sql,数据库架构)