2024/05/10

今日学习时长:3小时

代码行数:60左右吧

博客数量:2篇

今天主要完成数据库的实验一有关的内容:

实验一 数据库和表的建立、数据操作

要求:在 stumanage 数据库中,如下图建立表 student: 列名 数据类型 允许空 主键 说明 1 sno Char(8) 否 是 学号 2 sname Varchar(20) 是 否 姓名 3 sex Char(2) 是 否 性别 4 sdept Varchar(20) 是 否 所在系 如下图建立表:course 列名 数据类型 允许空 主键 说明 1 cno Char(6) 否 是 课程号 2 cname Varchar(20) 是 否 课程名 如下图建立表 sc:(注:包括两个外键,sno 和 cno 共同组成主键) 2 列名 数据类型 允许空 主键 外键 说明 1 sno Char(8) 否 是 students(sno) 学号 2 cno Char(6) 否 是 course(cno) 课程号 3 grade int 否 否 否 成绩 6、将三条建表语句写入实验报告。 7、在 student 表中插入两条数据: (1)20050101,王飞,男,计算机系 (2)20050102,李丽,女,信息系 8、在 course 表中插入两条数据: (1)01,数据结构 (2)02,数据库原理 9、在 sc 表中插入两条数据: (1)20050101,01,70 (2)20050102,02,90 10、将此八条 SQL 语句写入实验报告。 11、对每一门课,求学生的平均成绩,并把结果以基本表的形式存入数据库。将操 作命令和所用 SQL 语句写入实验报告。 12、修改 sc 表中 sno 为 20050102、cno 为 02 的记录的 grade 属性值为 85,然后将 该条记录删除。将此两条 SQL 语句写入实验报告。 13、修改‘数据库原理’课程的所有学生成绩为 0。将此条 SQL 语句写入实验报告。 14、删除‘李丽’的所有选课情况。将此条 SQL 语句写入实验报告。 15、删除数据库中的三个表中的所有数据,将所用 SQL 语句写入实验报告。 16、删除数据库中的三个表结构。将所用 SQL 语句写入实验报告。 17、删除数据库,将所用语句写入实验报告

create database stumanage;

create table student (
  sno char(8) not null primary key ,--学号
  sname varchar(20) ,    --姓名
  sex char(2) ,        --性别
  sdept varchar(20)        --所在系
) 


create table course (
    cno char(6) not null primary key, --课程号
    cname varchar(20)    --课程名
)

create table sc(
    sno char(8) not null  references student(sno),--学号
    cno char(6) not null primary key(sno,cno) references course(cno),--课程号
    grade int --成绩
)

insert into student values('20050101','王飞','','计算机系');
insert into student values('20050102','李丽','','计算机系');


insert into course values('01','数据结构');
insert into course values('02','数据库原理');

insert into sc values('20050101','01',70);
insert into sc values('20050102','02',90);
insert into sc values('20050101','02',80);
insert into sc values('20050102','01',88);

select course.cname 课程名称,avg(grade) 平均成绩 into avg_grade from sc,course where sc.cno=course.cno group by sc.cno,course.cname

update sc set grade=85 where sno='20050102' and cno='02';
delete from sc where sno='20050102' and cno='02';

update sc set grade=0 where cno=(select cno from course where cname ='数据库原理');

delete from sc where sno=(select sno from student where sname='李丽') ; 

begin transaction;
delete from sc;
delete from student;
delete from course;
commit;

drop table sc,student,course;

USE master --切换为master数据库,避免数据库正在使用而无法删除
GO
drop database stumanage;

 

posted @ 2024-05-10 21:10  伐木工熊大  阅读(16)  评论(0编辑  收藏  举报