实验一数据库及基本表的建立

  • 格式:doc
  • 大小:358.50 KB
  • 文档页数:9

路漫漫其修远兮,吾将上下而求索

- 百度文库

1 实验一 数据库及基本表的建立

一、实验目的

1、掌握SQL SERVER的查询分析器和企业管理器的使用;

2、掌握创建数据库和表的操作;

二、实验内容和要求

1、练习使用SQL语句、企业管理器(Enterprise Manager)创建数据库;

2、练习使用SQL语句、企业管理器(Enterprise Manager)创建数据库表;

三、实验主要仪器设备和材料

1.计算机及操作系统:PC机,Windows 2000/xp;

2.数据库管理系统:SQL sever 2005;

四、实验方法、步骤及结果测试

题目1、创建数据库“学生情况”:

实现代码及截图:

SQL语句

Create database 学生情况

查询分析器执行情况

SQL语句及执行结果截图显示

找到主数据文件和日志文件,观察大小,并给出截图。

路漫漫其修远兮,吾将上下而求索

-

百度文库

2

题目2、将数据库“学生情况”改名为“student”

SQL语句

EXEC sp_renamedb 学生情况, student

查询分析器执行情况:

SQL语句及执行结果截图显示

题目3、创建基本表

S表

含义 字段名 字段类型 字段宽度 说明

学号 Sno Char 10 主键,不允许为空

姓名 Sname char 10 不允许为空

性别 Ssex char 2 取值为男或女

专业 Ssp char 20

系别 Sdept char 20

出生日期 Sbirth datetime

地区来源 Sfrom varchar 30

变动情况 Schg char 10

政治面貌 Spa char 8 默认团员

民族 Snation char 8 默认为汉族

C表

含义 字段名 字段类型 字段宽度 说明

课程编号 Cno Char 10 主键

课程名称 Cname Char 10 唯一约束

任课教师 Tname Char 8

开课系别 Cdept Char 20 路漫漫其修远兮,吾将上下而求索 - 百度文库

3 学分 CCredit Real 0-20

Sc表:

含义 字段名 字段类型 字段宽度 说明

学号 Sno Char 10 外键,与cno共同构成主键

课程编号 Cno Char 10 外键,与sno共同构成主键

成绩 Grade real 检查约束0-100

备注 Remark varchar 50

创建各表的实现代码及截图:

SQL语句

create table S

(

Sno char(10) primary key,

Sname char(10) not null,

Ssex char(2) check (Ssex='男'or Ssex='女') ,

Ssp char(20),

Sdept char(20),

Sbirth datetime,

Sfrom varchar(30),

Schg char(10),

Spa char(8) default '团员',

Snation char(8) default '汉族');

create table C(

Cno char(10) primary key,

Cname Char(10) unique,

Tname char(8),

Cdept char(20),

CCredit real check(CCredit>=0 and CCredit<=20));

create table Sc(

Sno char(10) References C(Cno),

Cno char(10) References s(sno),

Grade real check(Grade>=0 and Grade<=100)

)

忘记了一个字段,加上:

alter table Sc add Remake varchar(50)

路漫漫其修远兮,吾将上下而求索

- 百度文库

4 查询分析器执行情况:

SQL语句及执行结果截图显示

题目4*、用sql语句将C表中的ccredit改为整型,同样约束为0-20之间

路漫漫其修远兮,吾将上下而求索

- 百度文库

5

题目5、用sql语句在S表中添加一格“备注”字段remark,变长字符型,长度30,并保存结果

题目6. 用sql语句将S表中“专业”字段数据类型改为varchar,长度为30并保存结果

题目7. 用sql语句删除SC表中的“备注”字段并保存结果 路漫漫其修远兮,吾将上下而求索

- 百度文库

6

生成数据库关系图截图显示

题目8生成数据库关系图截图显示

题目9*.用sql语句在S中增加约束,要求学号要用S开头,后接4位数字组成的字符串

试着插入学号为0001,姓名为张三的学生,给出提示结果的截图

alter table sc drop FK__Sc__Sno;

update sc set sno='s'+sno;

update s set sno='s'+sno;

alter table s add constraint ck_s_sno check(sno like 's____');

alter table sc add constraint fk_sc_sno foreign key (sno) references s(sno);

题目10. 通过sql语句向s表中添加信息。

Sno Sname Ssex Ssp Sdept Sbirth Sfrom Schg Spa Snation Remark

S0001 高明 男 计算机科学与技术 CS 1994-03-14 大连 团员 汉

S 0002 东学婷 女 计算机应用 CS 1986-10-24 包头 转系 团员 蒙

S 0003 张五男 男 电子商务 MA 1984-2-17 上海 退学 团员 汉

S 0004 刘% 男 电子商务 MA 1985-4-24 巴盟 团员 汉

S 0005 吴惠 女 软件开发 CS 1985-2-10 通辽 团员 汉

S 0006 王涛 男 软件开发 CS 1984-9-8 赤峰 团员 满 路漫漫其修远兮,吾将上下而求索 - 百度文库

7 S 0007 郭凤丽 男 应用电子 IS 1984-3-2 广州 团员 蒙

S 0008 贾惠 男 应用电子 IS 1983-2-2 深圳 团员 汉

S 0009 刘一% 男 软件开发 CS 1985-9-9 东莞 团员 满

S 0010 李春刚 男 计算机应用 CS 1985-2-10 河源 团员 汉 李春刚

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0001','高明','计算机科学与技术','CS','1994-03-14','大连',null,default,'汉)'

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0002','东学婷','女','计算机应用','CS','1986-10-24','包头','转系',default,'蒙',null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0003','张五男','男’,'电子商务','MA','1984-2-17','上海','退学',default,default,null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0004','刘%','男','电子商务','MA','1985-4-24','巴盟',null,default,default,null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0005','吴惠','女','软件开发','CS','1985-2-10','通辽',null,default,default,null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0006','王涛','男','软件开发','CS','1984-9-8','赤峰',null,default,'满',null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0007','郭凤丽','男','应用电子','IS','1984-3-2','广州',null,default,'蒙',null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0008','贾惠','男','应用电子','IS','1983-2-2','深圳',null,default,default,null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0009','刘一%','软件开发','CS','1985-9-9','东莞',null,default,'满',null);

insert into s(sno,sname,ssex,ssp,sdept,sbirth,sfrom,schg,spa,snation,sremark) values ('s0010','李春刚','男','计算机应用','CS','1985-2-10','河源',null,default,default,'李春刚'');

题目11.通过sql语句向C表中添加数据,并保存结果

Cno Cname Tname Cdept Ccredit

01 计算机应用 王晓梅 IS 4

02 高等数学 李一 MA 6

03 网页制作 张铁柱 CS 6

04 软件工程 付大鹏 CS 4

05 数据库 白一格 CS 6

INSERT INTO C(Cno,Cname,Tname,Cdept,CCredit) VALUES('01','计算机应用','王晓梅','IS',4)

INSERT INTO C(Cno,Cname,Tname,Cdept,CCredit) VALUES('02','高等数学','李一','MA',6)