mysql数据库实验题
- 格式:doc
- 大小:271.50 KB
- 文档页数:6
《数据库第二次作业——上机实验题》
实验测试环境:Windows10专业版 / SQL 2012 Developer Edition X64
实验一:交互式SQL的使用
实验要求:
1,创建Student数据库,包括Students,Courses,SC表,表结构如下:
Students(SNO,SNAME,SEX,BDATE,HEIGHT,DEPARTMENT)
Courses(CNO,CNAME,LHOUR,CREDIT,SEMESTER)
SC(SNO,CNO,GRADE)
(注:下划线表示主键,斜体表示外键),并插入一定数据。
1)创建Students表
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for Students
-- ----------------------------
DROP TABLE IF EXISTS `Students`;
CREATE TABLE `Students` (
`SNO` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT
NULL,
`SNAME` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
DEFAULT NULL,
`SEX` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
DEFAULT NULL,
`BDATE` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
`HEIGHT` double DEFAULT NULL,
`DEPARTMENT` varchar(255) CHARACTER SET utf8mb4 COLLATE
utf8mb4_general_ci DEFAULT NULL,
PRIMARY KEY (`SNO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
2)创建Courses表
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for Courses
-- ----------------------------
DROP TABLE IF EXISTS `Courses`;
CREATE TABLE `Courses` (
`CNO` varchar(255) NOT NULL,
`CNAME` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL,
`LHOUR` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL,
`CREDIT` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL,
`SEMESTER` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL,
PRIMARY KEY (`CNO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
3)创建SC表
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for SC
-- ----------------------------
DROP TABLE IF EXISTS `SC`;
CREATE TABLE `SC` (
`SNO` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL,
`CNO` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL,
`GRADE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
DEFAULT NULL,
KEY `SNO` (`SNO`),
KEY `CNO` (`CNO`),
CONSTRAINT `SC_ibfk_1` FOREIGN KEY (`SNO`) REFERENCES `Students` (`SNO`)
ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `SC_ibfk_2` FOREIGN KEY (`CNO`) REFERENCES `Courses` (`CNO`)
ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
4)插入数据到Students表
INSERT INTO Students(SNO,SNAME,SEX,BDATE,HEIGHT,DEPARTMENT)
VALUES('1001','李小','男','2019-05-31',1.80,'软件系');
SELECT * FROM Students;
5)插入Courses
INSERT INTO Courses(CNO,CNAME,LHOUR,CREDIT,SEMESTER) VALUES('cs_1001','起飞技术','6','99','春季');
SELECT * FROM Courses;
6)插入SC
INSERT INTO SC(SNO,CNO,GRADE) VALUES('1001','cs_1001','80');
SELECT * FROM SC;
2.完成如下的查询要求及更新的要求。
(1)查询身高大于1.70m的男生的学号和姓名;
select SNO,SNAME from Students where HEIGHT>1.7 AND SEX='男'
(2)查询计算机系秋季所开课程的课程号和学分数;
select CNO,CREDIT from Courses where substring(CNO, 4, 5) >1000 AND SEMESTER='春季';