赞
踩
一、SQL定义语句
1.用SQL定义语句创建符合如下条件的数据库:
数据库名为:学生数据库,模式:默认模式
数据文件的物理文件名为:主数据文件Students_data.mdf(逻辑文件同名),日志文件:Students_log.ldf(逻辑文件同名),存放在D:\Data文件夹下(若D:盘中无此文件夹,请先建立此文件夹,然后再创建数据库。)
2.选用已建立的“学生数据库”,用SQL定义语句创建符合如下条件的表C-1到C-4(注意各种完整性约束)
上述两题,界面方式或命令方式均需要熟练掌握
表C-1 Student表结构
列名 | 说明 | 数据类型 | 约束 |
Sno | 学号 | 普通编码定长字符串,长度为7 | 主键 |
Sname | 姓名 | 普通编码定长字符串,长度为10 |
|
Ssex | 性别 | 普通编码定长字符串,长度为2 |
|
Sage | 年龄 | 微整型(tinyint) |
|
Sdept | 所在系 | 普通编码不定长字符串,长度为20 |
|
Sid | 身份证号 | 普通编码定长字符串,长度为10 |
|
Sdate | 入学日期 | 日期 |
|
表C-2 Course表结构
列名 | 说明 | 数据类型 | 约束 |
Cno | 课程号 | 普通编码定长字符串,长度为10 | 主键 |
Cname | 课程名 | 普通编码不定长字符串,长度为20 |
|
Credit | 学时数 | 整型 |
|
Semester | 学分 | 小整型 |
|
表C-3 SC表结构
列名 | 说明 | 数据类型 | 约束 |
Sno | 学号 | 普通编码定长字符串,长度为7 | 主键,引用Student的外键 |
Cno | 课程号 | 普通编码定长字符串,长度为10 | 主键,引用Course的外键 |
Grade | 成绩 | 小整型 |
|
表C-4 Teacher表结构
列名 | 说明 | 数据类型 | 约束 |
Tno | 教师号 | 普通编码定长字符串,长度为8 |
|
Tname | 教师名 | 普通编码定长字符串,长度为10 |
|
Salary | 工资 | 定点小数,小数点前4位,小数点后2位 |
|
3. 写出实现如下功能的SQL语句,并执行所写代码,查看执行结果。
(1) 在Teacher表中添加一个职称列,列名为:Title,类型为nchar(4)。
(2) 将Course表中Credit列的类型改为:tinyint。
(3) 删除Student表中的Sid和Sdate列。
(4) 为Teacher表添加主键约束,其主键为:Tno。
表C-1 Student表中的记录,本次上机使用窗口方式录入数据
录入数据时请务必保证数据格式与定义的数据类型一致,否则会报错。
学号 | 姓名 | 性别 | 年龄 | 系别 | 身份证号 | 入学日期 |
0811101 | 李勇 | 男 | 21 | 计算机系 |
|
|
0811102 | 刘晨 | 男 | 20 | 计算机系 |
|
|
0811103 | 王敏 | 女 | 20 | 计算机系 |
|
|
0811104 | 张小红 | 女 | 19 | 计算机系 |
|
|
0821101 | 张立 | 男 | 20 | 信息管理系 |
|
|
0821102 | 吴宾 | 女 | 19 | 信息管理系 |
|
|
0821103 | 张海 | 男 | 20 | 信息管理系 |
|
|
0831101 | 钱小平 | 女 | 21 | 通信工程系 |
|
|
0831102 | 王大力 | 男 | 20 | 通信工程系 |
|
|
0831103 | 张姗姗 | 女 | 19 | 通信工程系 |
|
|
表C-2 Course表中的记录
Cno | Cname | Credit | Semester |
C001 | 高等数学 | 4 | 1 |
C002 | 大学英语 | 3 | 1 |
C003 | 大学英语 | 3 | 2 |
C004 | 计算机文化学 | 2 | 2 |
C005 | VB | 2 | 3 |
C006 | 数据库基础 | 4 | 5 |
C007 | 数据结构 | 4 | 4 |
C008 | 计算机网络 | 4 | 4 |
表C-3 SC表中的记录
Sno | Cno | Grade |
0811101 | C001 | 96 |
0811101 | C002 | 80 |
0811101 | C003 | 84 |
0811101 | C005 | 62 |
0811102 | C001 | 92 |
0811102 | C002 | 90 |
0811102 | C004 | 84 |
0821102 | C001 | 76 |
0821102 | C004 | 86 |
0821102 | C005 | 73 |
0821102 | C007 | NULL |
0821103 | C001 | 50 |
0821103 | C004 | 80 |
0831101 | C001 | 50 |
0831101 | C004 | 80 |
0831102 | C007 | NULL |
0831103 | C004 | 78 |
0831103 | C005 | 65 |
0831103 | C007 | NULL |
表C-4 Teacher表中的记录
Tno | Tname | Salary |
T001 | 张美霞 | 5000 |
T002 | 王洪林 | 5500 |
T003 | 李丽芬 | 4800 |
T004 | 周良水 | 6000 |
T005 | 吴翔 | 7000 |
三.实验结果
Student表
sql语句:
- create table Student(
-
- Sno char(7) primary key,
-
- Sname char(10),
-
- Sex char(2),
-
- Sage tinyint,
-
- Sdept varchar(20),
-
- Sid char(10),
-
- Sdate date
-
- );
Course表
sql语句:
- create table Course(
-
- Cno char(10) primary key,
-
- Cname varchar(20),
-
- Credit int,
-
- Semester smallint
-
-
-
- );
Sc表
Sql语句:
- create table SC(
-
- Sno char(7),
-
- Cno char(10),
-
- Grade smallint,
-
- foreign key(Sno) references Student(Sno),
-
- foreign key(Cno) references Course(Cno),
-
- primary key(Sno,Cno)
-
- );
Teacher表
Sql语句:
- create table Teacher(
-
- Tno char(8) primary key,
-
- Tname char(10),
-
- Salary numeric(6,2)
-
-
-
- );
写出实现如下功能的SQL语句,并执行所写代码,查看执行结果。
ALTER table Teacher add Title nchar(4);
ALTER table Course alter column Credit tinyint;
ALTER table Student drop column Sid,Sdate;
ALTER table Teacher add unique(Tno);
Student表插入数据
- INSERT INTO Student(Sno,Sname,Sex,Sage,Sdept) VALUES
-
- ('0811101','李勇','男',21,'计算机系'),
-
- ('0811102','刘晨','男',20,'计算机系'),
-
- ('0811103','王敏','女',20,'计算机系'),
-
- ('0811104','张小红','女',19,'计算机系'),
-
- ('0821101','张立','男',20,'信息管理系'),
-
- ('0821102','吴宾','女',19,'信息管理系'),
-
- ('0821103','张海','男',20,'信息管理系'),
-
- ('0831101','钱小平','男',21,'信息管理系'),
-
- ('0831102','王大力','女',20,'计算机系'),
-
- ('0831103','张姗姗','男',19,'计算机系');
Course表插入数据
- INSERT INTO Course(Cno,Cname,Credit,Semester) VALUES
-
- ('C001','高等数学',4,1),
-
- ('C002','大学英语',3,1),
-
- ('C003','大学英语',3,2),
-
- ('C004','计算机文化学',2,2),
-
- ('C005','VB',2,3),
-
- ('C006','数据库基础',4,5),
-
- ('C007','数据结构',4,4),
-
- ('C008','计算机网络',4,4);
SC表插入数据
- INSERT INTO SC(Sno,Cno,Grade) VALUES
-
- ('0811101','C001',96),
-
- ('0811101','C002',80),
-
- ('0811101','C003',84),
-
- ('0811101','C005',62),
-
- ('0811102','C001',92),
-
- ('0811102','C002',90),
-
- ('0811102','C004',84),
-
- ('0821102','C001',76),
-
- ('0821102','C004',86),
-
- ('0821102','C005',73),
-
- ('0821102','C007',NULL),
-
- ('0821103','C001',50),
-
- ('0821103','C004',80),
-
- ('0831101','C001',50),
-
- ('0831101','C004',80),
-
- ('0831102','C007',NULL),
-
- ('0831103','C004',78),
-
- ('0831103','C005',65),
-
- ('0831103','C007',NULL);
Teacher表插入数据
- INSERT INTO Teacher(Tno,Tname,Salary) VALUES
-
- ('T001','张美霞',5000),
-
- ('T002','王洪林',5500),
-
- ('T003','李丽芬',4800),
-
- ('T004','周良水',6000),
-
- ('T005','吴翔',7000);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。