数据库实验一 熟悉数据库管理系统环境及SQL定义语言

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_44096577/article/details/102670092

实验一

在这里插入图片描述
在这里插入图片描述

一共12个任务,我们一个一个来

一和二毫无意义,我们从三开始

三.3.利用SQL Server企业管理组件创建数据库“Student”

在这里插入图片描述
右键单击数据库——新建数据库——输入名称Student——确定
OK,这个任务就完成啦

四、打开“Student”数据库,利用SQL Server企业管理组件建立如下三个表,按下面的列表中的字段名(英文)、类型和宽度建立

首先点开数据库student,点击表,右键单击新建表,按照实验指导书内的内容进行填写即可。
在这里插入图片描述
按下Ctrl+S保存,输入表名student
在这里插入图片描述
这时候就能看见新建的表啦!如果没看见也不要着急,右键单击表,点刷新,student表就出来了。
新建course表的时候特别注意一下,要求学分的小数位数为1,则numeric(18.1)表示18位有效数字,1位小数。
在这里插入图片描述
在这里插入图片描述
建立SC表的时候也要注意小数的问题

至此,第四步就做完了

五、按图1-3所示的三个表中的数据利用企业管理器打开表,输入数据;

输入数据不用多讲,输!
右键单击student表,选择编辑前200行;
sc表和course同理;
记得一定要随手Ctrl+s保存 ,我上次上机课代码全没啦,老师也不信我写了
对了,刚才好像忘了说设置主键了
右键点击,设置主键
sc表要设置两个主键,按住Ctrl选择sno和cno,点设置主键,就可以设置两个主键

强烈建议大家先填数据再设置主键,要不然都会被警告烦死
大功告成
在这里插入图片描述

六、6.打开查询分析器,用SQL语言CREATE TABLE语句创建学生表student、课程表course和选课表SC;(字段类型及长度参照上图)

在这里插入图片描述
创建表格,贴代码
由于我们创建过三个表,所以我们这次创建student1,sc1和course1,。


create table student1
(sno char(8) primary key,       
 sname char(8) not null unique, 
 ssex char(2) default '男' check(ssex='男' or ssex='女'),  
 sage int check(sage>13 and sage<50),
 sdept char(20))

 create table course1				  
(cno char(3) PRimary key,        
 cname varchar(20),  
 cpno char(2),       
 credit numeric)	 

create table sc1        
(sno char(8),           
 cno char(3),           
 grade numeric,         
 constraint pk_grade primary key(sno,cno),
 constraint fk_stuid foreign key(sno) references student1(sno),
 constraint fk_course foreign key(cno) references course1(cno),
 constraint ck_grade check(grade>=0 and grade<=100) )

七、7.用SQL语言ALTER语句修改表结构;

a)STUDENT表中SNO设为非空和唯一;
b)STUDENT表中增加一个字段SBIRTH,类型设置为日期时间类型,增加一个ADDRESS字段,类型为文本(字符);
删除STUDENT表中ADDRESS字段;
对于a:

alter table student1
add constraint weiyi unique (sno)

对于b:

alter table student 
add SBIRTH date
alter table student 
add ADDRESS char(50)

删除

alter table student
drop column ADDRESS

八、重新定义一个简单表,然后用SQL语言DROP语句删除该表结构

定义一个简单表

create table student11
(
sno char(8)
)

删除

drop table student11

九、用SQL语言CREATE INDEX语句定义表STUDENT的SNAME字段的降序索引

create index snamedesc
on student(sname desc)

十、用SQL语言CREATE INDEX语句定义表SC的GRADE字段的升序索引

create index gradeasc
on sc(grade asc)

十一、用SQL语言DROP语句删除索引

drop index snamedesc on student
drop index gradeasc on sc

十二和十三没必要写了,第一个实验差不多就到这了,如果发现有错误,请指正,私聊我,要不然错误摆在这很难堪的呀。。。。。。

猜你喜欢

转载自blog.csdn.net/weixin_44096577/article/details/102670092