SQL数据库系统实验报告含代码截图文档格式.docx
- 文档编号:19511793
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:26
- 大小:26.94KB
SQL数据库系统实验报告含代码截图文档格式.docx
《SQL数据库系统实验报告含代码截图文档格式.docx》由会员分享,可在线阅读,更多相关《SQL数据库系统实验报告含代码截图文档格式.docx(26页珍藏版)》请在冰豆网上搜索。
ma*size=10,
filegrowth=1)
logon
(name=userdb1_log,
\*ygl\userdb1.ldf'
size=2,
ma*size=5,
执行上述语句建立数据库userdb1
2.根据步骤1的sql语句,写出创建实验1中数据库EDUC的sql语句,并建立数据库EDUC.
createdatabaseEDUC
(name=EDUC_data,
E:
\sql_data\EDUC.mdf'
size=10,
ma*size=50,
filegrowth=5%)
(name=EDUC_log,
\sql_data\EDUC.ldf'
3.用SQL语句删除步骤1建立的数据库userdb1。
dropdatabaseuserdb1
或者直接语句usemasterdropdatabaseuserdb1
4、在查询分析器中还可以实现对数据库的修改操作,
AlterDATABASE数据库名
{ADDFILE<
文件选项>
新增数据文件
|ADDLOGFILE<
新增数据日志文件
|REMOVEFILE逻辑文件名删除指定文件
|ADDFILEGROUP文件组名新增文件组
|REMOVEFILEGROUP文件组名删除文件组
|MODIFYFILE<
修改文件属性
|MODIFYNAME=新数据库名数据名更改
(1)、将文件名EDUC改为EDUC1
ALTERDATABASEEDUC
MODIFYNAME=EDUC1;
(2)、增加一个日志文件,文件名为EDUC_LOG,初始大小为10mb,最大为20MB,增加为1MB
ALTERDATABASEEDUC1
ADDLOGFILE
(NAME=EDUC_LOG,
FILENAME='
E:
\sql_data\EDUC_LOG.LDF'
SIZE=10MB,
MA*SIZE=20MB,
FILEGROWTH=1MB
通过本次实验,我进一步了解了数据库的逻辑结构和物理结构。
初步掌握使用SQL语句创建、删除和修改数据库。
对相关语句的应用也更加得心应手。
实验三使用SQL语句创建和删除表
一.实验目的
1.了解表的结构特点。
2.了解SQLServer的基本数据类型。
3.学会使用T-SQL语句创建表。
二.实验要求
1.完成SQL语句创建、修改、删除基本表。
2.完成实验报告。
在数据库EDUC中,创建如下几个表:
表3.1class表(班级信息表)
字段名称
类型
允许空值
主键
说明
ClsNO
Char(6)
NOTNULL
是
班号
ClsName
Varchar(16)
班名
Director
Varchar(10)
NULL
辅导员
Specialty
Varchar(30)
专业
表3.2student表(学生信息表)
Sno
Char(8)
**
Sname
SCse*
Char
(2)
性别:
男、女
班级的编号,(外键)参照表Class
Saddr
Varchar(20)
住址
Sage
numeric(3,0)
年龄,大于10,但小于30岁
Height
Decimal(4,2)
身高
表3.3course表(课程信息表)
o
Char(4)
主键
ame
课程的名称
Cpno
char(4)
先修课程的课程号(外键),参照o
Ccredit
Tinyint
学分
表3.4sc表(学生选课成绩表)
**,参照Student,与o组成主键
O
课程号,参照Course
grade
Numeric(4,1)
成绩
1.打开查询窗口,输入创建基本表的sql语句,点击“执行”按钮,完成表的创建。
创建class表如下:
CREATETABLEclass
(ClsNOCHAR(6)PRIMARYKEYNOTNULL,
ClsNameVARCHAR(16)NOTNULL,
DirectorVARCHAR(10)NULL,
SpecialtyVARCHAR(30)NULL
);
2.用上述方法创建其他表。
创建student表如下:
CREATETABLEstudent
(SnoCHAR(8)PRIMARYKEYNOTNULL,
SnameVARCHAR(10)NOTNULL,
SCse*CHAR
(2)check(scse*='
男'
orscse*='
女'
),
CLsNOCHAR(6)NULL,
SaddrVARCHAR(20),
SageNUMERIC(3,0)check(10<
Sageandsage<
30),
HeightDECIMAL(4,2)
FOREIGNKEY(CLsNO)REFERENCESclass(CLsNO)
创建course表如下:
CREATETABLEcourse
(oCHAR(4)PRIMARYKEYNOTNULL,
ameVARCHAR(16)NOTNULL,
CpnoCHAR(4)NULL,
CcreditTINYINT,
foreignkey(Cpno)referenceso
创建SC表如下:
CREATETABLEsc
(PRIMARYKEY(sno,o),
snochar(8)notnull,
ochar(4)notnull,
foreignkey(Sno)referencesstudent(sno),
foreignkey(O)referencescourse(o),
gradeNUMERIC(4,1)NULL
3.按照student的要求创建表student1,修改基本表student1
向student1表增加“入学时间”列s_entrance,其数据类型为日期型。
ALTERTABLEstudent1
ADDS_ENTRANCEDATETIME;
4.按照student的要求创建表student2,并将年龄的数据类型由字符型改为整数。
Altertablestudent2altercolumnsageint;
(报错:
因为sage上有check约束,删除check约束后再修改类型)
Altertablestudent2
dropCK__student2__Sage__689D8392;
Altertablestudent2altercolumnsageint;
5.将student2表中sage改回smallint型。
Altertablestudent2altercolumnsagesmallint;
6.删除sage后再增加新列和新的完整性约束
Altertablestudent2dropcolumnsage;
altertablestudent2addsagecharcheck(10<
sageand30>
sage);
7.按照student的要求创建Student1,然后删除Sse*完整性约束。
CREATETABLEstudent2
altertablestudent2
dropCK__student2__SCse*__76EBA2E9;
8.删除基本表student1。
droptablestudent1;
9.将以上创建表的SQL语句以.SQL文件的形式保存在磁盘上。
10、将在sudent1中新加入的列名s_entrance修改为Sentrance
e*ec
sp_rename
'
student1.S_entrance'
'
sentrance'
altertablestudent1
adds_entrancechar;
e*ecsp_rename'
;
11、将student2表名改为student1
student2'
student1'
通过这次实验,我了解了SQLServer的常用数据类型,学会创建数据库的表。
掌握了SQL创建基本表的方法、SQL修改基本表的方法,以及SQL删除基本表的方法。
实验四数据更新操作
一.实验目的
1.熟悉使用UPDATE/INSERT/DELETE语句进行表操作;
2.能将这些更新操作应用于实际操作中去;
二.实验要求
1.完成下面的实验容,并提交实验报告;
2.在实验报告中附上相应的代码;
(1)向表(Class)中插入数据
CS01
计算机一班
宁
计算机应用
CS02
计算机二班
王宁
MT04
数学四班
晨
数学
PH08
物理八班
格
物理
GL01
地理一班
四
应用地理
插入数据之后使用命令:
Select*fromClass;
检查插入数据的正确性
(2)向表(Student)中插入数据
Sse*
20090101
王军
男
下关40*
20
1.76
20090102
杰
江边路96*
22
1.72
20090306
王彤
女
中央路94*
19
1.65
19940107
吴杪
莲化小区74*
18
1.60
Select*fromStudent;
(3)向表(Course)中插入数据
Credit
0001
高等数学
Null
6
0003
计算机基础
3
0007
4
Select*fromCourse;
(4)向表(SC)中插入数据
SNO
Grade
90
86
87
76
93
85
(5)对于student表,将所有班级号为‘CS01’的,并且年龄小于20岁的学生的班级号改为‘CS02’。
(6)对于student表,删掉所有年龄不小于20岁,并且专业号为‘CS02’的学生的记录。
对于student表,插入一条新记录,它的具体信息为,**:
20071101、:
三、性别:
男、年龄:
19、班级‘CS01’。
(7)对于student表,将年龄最小的学生的家庭地址去掉。
(8)对于student表,将平均年龄最小的一个班级编号改为‘GL01’
四、实验步骤:
1.向class表插入数据如下:
insert
intoclass(clsno,clsname,director,specialty)
values('
cs01'
计算机一班'
,'
宁'
计算机应用'
cs02'
计算机二班'
王宁'
mt04'
数学四班'
晨'
数学'
ph08'
物理八班'
格'
物理'
gl01'
地理一班'
四'
应用地理'
2.向Student表插入数据如下:
intostudent(sno,sname,scse*,clsno,saddr,sage,height)
20090101'
王军'
下关40*'
20'
1.76'
intostudent(sno,sname,scse*,clsno,saddr,sage,height)
20090102'
杰'
江边路96*'
22'
1.72'
20090306'
王彤'
中央路94*'
19'
1.65'
19940107'
吴杪'
莲化小区74*'
18'
1.60'
3.向course表插入数据如下:
intocourse(o,ame,cpno,ccredit)
0001'
高等数学'
null'
6'
0003'
计算机基础'
3'
0007'
4'
4.向表SC中插入数据
intosc(sno,o,grade)
90'
86'
87'
76'
93'
85'
5.对于student表,将所有班级号为‘CS01’的,并且年龄不大于20岁的学生的班级号改为‘CS02’
updatestudent
setclsno='
whereclsno='
andsage<
20;
6.对于student表,删掉所有年龄不小于20岁,并且专业号为‘CS02’的学生的记录。
如果建表的时候没写级联删除,就在删除前先添加级联删除语句
delete
fromstudent
andsage>
=20;
20071101'
三'
null,'
null);
7.对于student表,将年龄最小的学生的家庭地址去掉。
setsaddr='
wheresagein
(selectmin(sage)
fromstudent)
8.对于student表,将平均年龄最小的一个班级编号改为‘GL01’
wheresage<
=
(selectmin(avg(sage))
groupbystudent.clsno);
9、对于student表,将**为19940107的学生的该成“吴用”;
setsname='
吴用'
wheresno='
10、对于sc表,将**为20090101且的成绩为86的学生的成绩改为96
updatesc
setgrade='
96'
andgrade='
五、实验总结
通过本次实验,我掌握了向EDUC数据库的各表中插入、修改和删除数据的方法。
了解并掌握了使用INSERT、UPDATE及DELETE语句。
实验五创建和删除索引
1.了解索引的类型和应用。
2.学会用SQL语句对表创建和删除索引
1.了解索引类型并比较各类索引的不同之处
1.完成索引的创建和删除,并提交实验报告。
三.实验容
1.用SQL语句分别建立以下索引
(1)在student表的Sname列上建立普通降序索引Stusname。
(2)在course表的aame列上建立唯一索引Couame。
(3)在sc表的Sno(升序),o(升序)和grade(降序)三列上建立一个普通索引So。
2.用SQL语句删除索引
删除Student表的Stusname索引。
五.实验指导
(1)在student表的sname列上建立普通降序索引Stusname。
createinde*stusnameonstudent(snamedesc);
(2)在course表的ame列上建立唯一索引Couame。
createuniqueinde*couameoncourse(ame);
(3)在s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 数据库 系统 实验 报告 代码 截图