mysql数据库实验答案.doc

上传人:wj 文档编号:86667 上传时间:2022-10-02 格式:DOC 页数:22 大小:246KB
下载 相关 举报
mysql数据库实验答案.doc_第1页
第1页 / 共22页
mysql数据库实验答案.doc_第2页
第2页 / 共22页
mysql数据库实验答案.doc_第3页
第3页 / 共22页
mysql数据库实验答案.doc_第4页
第4页 / 共22页
mysql数据库实验答案.doc_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

mysql数据库实验答案.doc

《mysql数据库实验答案.doc》由会员分享,可在线阅读,更多相关《mysql数据库实验答案.doc(22页珍藏版)》请在冰豆网上搜索。

mysql数据库实验答案.doc

实验一创建、修改数据库和表结构

1、用create建立教学数据库的五个基本表:

(1)学生表(学号,姓名,性别,年龄),student((Sno,sname,ssex,sage);

(2)课程表(课程号,课程名,学分),Course(Cno,Cname,credit);

(3)选课表(学号,课程号,成绩),SC(Sno,,Cno,grade);

(4)教师表(教师号,姓名,性别,出生年月,系部,职称,地址),

T(Tno,Tname,ssex,birthday,dept,title,address);

(5)工资表(教师号,基本工资,职务工资,合计),Salary(Tno,jbgz,zwgz,hj);

CreateDatabaseStudentdefaultcharactersetutf8defaultCOLLATEutf8_bin;

UseStudent;

CreateTableStudent(

SNo char(20)primarykey,

SName char(20),

SSex char(4)default'男',

SAge int

)ENGINE=InnoDB;

CreateTableCourse(

CNo char(20)primarykey,

CName char(20)NOTNULL,

CRedit float

)ENGINE=InnoDB;

CreateTableSC(

SNo char(20)NOTNULL,

CNo char(20)NOTNULL,

Grade float,

PrimaryKey(SNo,CNo),

ForeignKey(SNo)ReferencesStudent(SNo)OnDeleteCascade,

ForeignKey(CNo)ReferencesCourse(CNo)

)ENGINE=InnoDB;

CreateTableT(

TNo char(20)PrimaryKey,

TName char(20)NOTNULL,

TSex char(4)default'男',

birthdayDateTime,

dept char(20),

title char(20),

addresschar(20)

)ENGINE=InnoDB;

CreateTableSalary(

TNo char(20)NOTNULL,

jbgz float,

zwgz float,

hj float,

ForeignKey(TNo)ReferencesT(TNo)OnDeleteCascade

)ENGINE=InnoDB;

2、用alter修改基本表

(1)在已存在的学生表student中增加一个sdept(系)的新的属性列;

altertableStudentaddDeptchar(20);

(2)将学生表student中sname属性列的数据类型修改为变长字符串varchar(10)。

alterableStudentmodifycolumsnamevarchar(10)

3、建立一个临时表,然后将其删除

CreateTabletemp(

ANo char(20)NOTNULL,B float,Cchar(10))

Droptabletemp

实验二建立与删除索引

1、用createindex在学生表student的学号sno上建立聚簇索引。

CreateClusteredIndexSNo_IndexOnStudent(SNo);

2、在学生表student中,为姓名sname建立非聚簇索引。

CreateIndexSName_IndexOnStudent(SName);

3、在课程表的课程号Cno上建立唯一索引。

CreateUniqueIndexCNo_IndexOnCourse(CNo);

4、在选课表的学号sno、成绩Grade上建立复合索引,要求学号为升序,学号相同时成绩为

降序。

CreateIndexSCNo_IndexOnSC(SNoASC,GradeDESC);

5、用drop删除学生表student的索引。

DropIndexStudent.SNo_Index;

6、增加学生表student中姓名唯一约束。

AlterTableStudentAddUnique(SName);

7、增加学生表student中性别‘男’、‘女’唯一约束。

AlterTableStudentAddConstraint:

SSexcheck(SSex='男'orSSex='女');

8、增加学生表student中年龄18~25岁约束。

AlterTableStudentAddConstraint:

SAgecheck(SAge>=18AndSAge<=25);

9、增加选课表SC中学号sno的外码约束。

AlterTableSCAddForeignKey(SNo)referencesStudent(SNo);

-

实验三数据的插入、更新及删除操作

1、用insert输入数据。

学生表student的数据

991201

张三

22

计算机系

991202

李四

21

信息系

991101

王五

23

数学系

991102

陈六

19

计算机系

991103

吴七

24

数学系

000101

刘八

22

信息系

InsertIntoStudentValues('991201','张三','男',22,'计算机科学与技术系');

InsertIntoStudentValues('991202','李四','男',21,'信息科学系');

InsertIntoStudentValues('991101','王五','男',23,'数理系');

InsertIntoStudentValues('991102','陈六','男',19,'计算机科学与技术系');

InsertIntoStudentValues('991103','吴七','女',24,'数理系');

InsertIntoStudentValues('000101','刘八','女',22,'信息科学系');

课程表course的数据

1

数学

5

2

数据结构

4

3

程序设计

2

4

数据库原理

3

5

操作系统

3

InsertIntoCourseValues('1','数学',5);

InsertIntoCourseValues('2','数据结构',4);

InsertIntoCourseValues('3','程序设计',2);

InsertIntoCourseValues('4','数据库原理',3);

InsertIntoCourseValues('5','操作系统',3);

选课表SC的数据

991201

1

90

991201

5

80

991201

3

85

991201

4

90

991102

1

85

991102

2

98

000101

2

91

InsertIntoSCValues('991201','1',90);

InsertIntoSCValues('991201','5',80);

InsertIntoSCValues('991201','3',85);

InsertIntoSCValues('991201','4',90);

InsertIntoSCValues('991102','1',85);

InsertIntoSCValues('991102','2',98);

InsertIntoSCValues('000101','2',91);

基本表T的数据

0001

张三

1968-10

信息

副教授

湘潭

0002

李四

1956-11

信息

教授

长沙

1001

王五

1973-07

计算机

讲师

湘潭

1008

陈六

1970-08

计算机

副教授

北京

InsertIntoTValues('0001','张三','男','1968-10-10','信息科学系','副教授','湘潭');

InsertIntoTValues('0002','李四','女','1956-11-10','信息科学系','教授','长沙');

InsertIntoTValues('1001','王五','男','1973-07-20','计算机科学与技术系','讲师','湘潭');

InsertIntoTValues('1008','陈六','男','1970-08-20','计算机科学与技术系','副教授','北京');

基本表Salary的数据

0001

1000

300

1300

0002

1500

500

2000

1001

800

200

1000

InsertIntoSalaryValues('0001',1000,300,1300);

InsertIntoSalaryValues('0002',1500,500,2000);

InsertIntoSalaryValues('1001',800,200,1000);*/

2、用delete删除数据记录

(1)删除教师表T中教师号为0001的元组。

(2)删除教师表T中的全部数据。

updatetsetbirthday='1961-10-04'whereTno='0001'

DeleteFromT;

3、用update更新数据记录

(1)把0001号教师的基本工资加100。

(2)把所有教师的基本工资都加100。

UpdateSalarySetjbgz=jbgz+100WhereTNo='0001'

UpdateSalarySetjbgz=jbgz+100

实验四数据的查询

1、简单查询,用select检索

(1)查询所有学生的基本情况。

select*fromstudent;

(2)查询教师每月应交纳的个人所得税。

selecthj*0.005asmonthshuifromSalary;

(3)查询张三与李四两位同学的基本情况。

select*fromstudentwheresname='张三'orsname='李四';

(4)查询9911班学生的基本信息(规定学生学号的前四位是班级号)。

se

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1