建立数据库ST, 三个表名称及实验数据如下: S SC sclass sno sname ssex sage Sdept 1 1 李勇 男 20 IS 1 2 刘晨 女 19 IS 1 3 刘朋 男 20 IS 2 1 王敏 女 18 MA 2 2 张锋 男 19 MA 2 3 李敏 男 20 MA sclass sno cno grade 1 1 1 92 1 1 2 85 1 1 3 88 1 2 2 90 1 2 3 80 2 1 1 75 2 1 2 92 2 2 2 87 2 2 3 89 2 3 1 90 C cno cname cpno ccredit 1 数据库 5 4 2 数学 2 3 信息系统 1 4 4 操作系统 6 3 5 数据结构 7 4 6 数据处理 2 7 PASCAL语言 6 4 基于上面的三个表采用SQL编程实现数据库的录入、修改、删除和备份等管理功能,并能实现基于学号显示学生基本信息、课程名、成绩信息。 (一)画出E-R图及程序功能分析设计图 (二)程序运行结果及主要程序代码(要有注释)
时间: 2024-04-22 22:22:05 浏览: 145
抱歉,我是一个语言模型AI,无法运行程序或进行数据库操作。但是,我可以提供一些基本的SQL语句供参考:
1. 创建表S、SC和C:
```
CREATE TABLE S (
sno CHAR(10) PRIMARY KEY,
sname CHAR(20),
ssex CHAR(2),
sage INT,
sdept CHAR(20)
);
CREATE TABLE SC (
sno CHAR(10),
cno CHAR(10),
grade INT,
PRIMARY KEY (sno, cno),
FOREIGN KEY (sno) REFERENCES S(sno),
FOREIGN KEY (cno) REFERENCES C(cno)
);
CREATE TABLE C (
cno CHAR(10) PRIMARY KEY,
cname CHAR(20),
cpno CHAR(10),
ccredit INT
);
```
2. 插入数据:
```
INSERT INTO S VALUES ('1', '李勇', '男', 20, 'IS');
INSERT INTO S VALUES ('2', '刘晨', '女', 19, 'IS');
INSERT INTO S VALUES ('3', '刘朋', '男', 20, 'IS');
INSERT INTO S VALUES ('1', '王敏', '女', 18, 'MA');
INSERT INTO S VALUES ('2', '张锋', '男', 19, 'MA');
INSERT INTO S VALUES ('3', '李敏', '男', 20, 'MA');
INSERT INTO SC VALUES ('1', '1', 92);
INSERT INTO SC VALUES ('1', '2', 85);
INSERT INTO SC VALUES ('1', '3', 88);
INSERT INTO SC VALUES ('2', '2', 90);
INSERT INTO SC VALUES ('2', '3', 80);
INSERT INTO SC VALUES ('2', '1', 75);
INSERT INTO SC VALUES ('2', '2', 92);
INSERT INTO SC VALUES ('2', '3', 89);
INSERT INTO SC VALUES ('3', '1', 90);
INSERT INTO C VALUES ('1', '数据库', '5', 4);
INSERT INTO C VALUES ('2', '数学', NULL, 2);
INSERT INTO C VALUES ('3', '信息系统', '1', 4);
INSERT INTO C VALUES ('4', '操作系统', '6', 3);
INSERT INTO C VALUES ('5', '数据结构', '7', 4);
INSERT INTO C VALUES ('6', '数据处理', NULL, 2);
INSERT INTO C VALUES ('7', 'PASCAL语言', '6', 4);
```
3. 查询学生基本信息:
```
SELECT * FROM S WHERE sno = '1';
```
4. 查询课程名和成绩信息:
```
SELECT c.cname, sc.grade
FROM C c, SC sc
WHERE c.cno = sc.cno AND sc.sno = '1';
```
5. 修改成绩信息:
```
UPDATE SC SET grade = 90 WHERE sno = '1' AND cno = '1';
```
6. 删除学生信息:
```
DELETE FROM S WHERE sno = '3';
```
以上仅是一些简单的SQL语句示例,具体实现还需要根据所用数据库的不同进行调整。建议您参考相关文献或请专业人士进行实现。
阅读全文