版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
实验一
一共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