当前位置:文档之家› mysql数据库实验答案

mysql数据库实验答案

实验一创建、修改数据库和表结构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);Create Database Student default character set utf8 default COLLATE utf8_bin;Use Student;Create Table Student(SNo c har(20) primary key,SName char(20) ,SSex char(4) default '男',SAge int) ENGINE=InnoDB;Create Table Course(CNo c har(20) primary key,CName char(20) NOT NULL,CRedit f loat) ENGINE=InnoDB;Create Table SC(SNo c har(20) NOT NULL,CNo c har(20) NOT NULL,Grade float,Primary Key(SNo, CNo),Foreign Key(SNo) References Student(SNo) On Delete Cascade,Foreign Key(CNo) References Course(CNo))ENGINE=InnoD B;Create Table T(TNo c har(20) Primary Key,TName char(20) NOT NULL,TSex char(4) default '男',birthday DateTime,dept char(20),title char(20),address char(20))ENGINE=InnoDB;Create Table Salary(TNo c har(20) NOT NULL,jbgz float,zwgz float,hj float,Foreign Key(TNo) References T(TNo) On Delete Cascade)ENGINE=InnoDB;2、用alter修改基本表(1)在已存在的学生表student中增加一个sdept(系)的新的属性列;alter table Student add Dept char(20);(2)将学生表student中sname属性列的数据类型修改为变长字符串varchar(10)。

alter able Student modify colum sname varchar(10)3、建立一个临时表,然后将其删除Create Table temp (ANo c har(20) NOT NULL,B float, C char(10) )Drop table temp实验二建立与删除索引1、用create index在学生表student的学号sno上建立聚簇索引。

Create Clustered Index SNo_Index On Student(SNo);2、在学生表student中,为姓名sname建立非聚簇索引。

Create Index SName_Index On Student(SName);3、在课程表的课程号Cno上建立唯一索引。

Create Unique Index CNo_Index On Course(CNo);4、在选课表的学号sno、成绩Grade上建立复合索引,要求学号为升序,学号相同时成绩为降序。

Create Index SCNo_Index On SC(SNo ASC, Grade DESC);5、用drop删除学生表student的索引。

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

Alter Table Student Add Unique(SName);7、增加学生表student中性别‘男’、‘女’唯一约束。

Alter Table Student Add Constraint:SSex check(SSex = '男' or SSex = '女');8、增加学生表student中年龄18~25岁约束。

Alter Table Student Add Constraint:SAge check(SAge >= 18 And SAge <= 25);9、增加选课表SC中学号sno的外码约束。

Alter Table SC Add Foreign Key(SNo) references Student(SNo);-实验三数据的插入、更新及删除操作1、用insert输入数据。

学生表student的数据Insert Into Student Values('991201', '张三', '男', 22, '计算机科学与技术系');Insert Into Student Values('991202', '李四', '男', 21, '信息科学系');Insert Into Student Values('991101', '王五', '男', 23, '数理系');Insert Into Student Values('991102', '陈六', '男', 19, '计算机科学与技术系');Insert Into Student Values('991103', '吴七', '女', 24, '数理系');Insert Into Student Values('000101', '刘八', '女', 22, '信息科学系');课程表course的数据Insert Into Course Values('1', '数学', 5);Insert Into Course Values('2', '数据结构', 4); Insert Into Course Values('3', '程序设计', 2); Insert Into Course Values('4', '数据库原理', 3); Insert Into Course Values('5', '操作系统', 3);选课表SC的数据Insert Into SC Values('991201', '1', 90);Insert Into SC Values('991201', '5', 80);Insert Into SC Values('991201', '3', 85);Insert Into SC Values('991201', '4', 90);Insert Into SC Values('991102', '1', 85);Insert Into SC Values('991102', '2', 98);Insert Into SC Values('000101', '2', 91);基本表T的数据Insert Into T Values('0001', '张三', '男', '1968-10-10', '信息科学系', '副教授', '湘潭');Insert Into T Values('0002', '李四', '女', '1956-11-10', '信息科学系', '教授', '长沙');Insert Into T Values('1001', '王五', '男', '1973-07-20', '计算机科学与技术系', '讲师', '湘潭');Insert Into T Values('1008', '陈六', '男', '1970-08-20', '计算机科学与技术系', '副教授', '北京');基本表Salary的数据Insert Into Salary Values('0001', 1000, 300, 1300); Insert Into Salary Values('0002', 1500, 500, 2000); Insert Into Salary Values('1001', 800, 200, 1000);*/ 2、用delete删除数据记录(1)删除教师表T中教师号为0001的元组。

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

update t set birthday='1961-10-04' where Tno ='0001'Delete From T;3、用 update更新数据记录(1)把0001号教师的基本工资加100。

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

相关主题