《计算机网络与数据库技术》-上机实验二

目录

一.【实验目的】

二.【实验准备】

三、【实验内容及步骤】

四.【实验预习】

五.【实验结果】

(1)将主数据库文件factory.mdf放置在H:\DBF文件夹中,其文件大小自动增长为按5 MB增长。

(2)将事务日志文件 factory_Jog.ldf 放置在 H:\DBF 文件夹中,其文件大小自动增长为

按 2 MB 增长。

 (3)用 create 语句建立职工表 worker,其结构为:职工号,int;姓名,char(8);性别,char(2);出生日期,datetime;党员否 char(2);参加工作,datetime;部门号,int。其中“职工号”为主键。

(4)修改 worker 表的结构,添加“E_mail   varchar(20)”字段。

(5)将上例中 worker 表中“E_mail”字段的数据类型改为 varchar(30)

(6)删除 worker 表中的“E_mail”字段

(7)并用 insert 语句在 worker 表中输入如下记录:

 (8)用 create 语句建立部门表 depart,其结构为:部门号,int;部门名char(10)。其中,“部门号”为主键。并用 insert 语句在 depart 表中输入如下记录:

 (9)用 create 建立职工工资表 salary,其结构为:职工号,int;姓名,char(8):日期,datetime;工资,decimal(6,1)。其中,“职工号”和“日期”为主键。并用 insert 语句在 salary表中输入如下记录:

(10)将 worker 表中姓名为“陈明”的部门号改为“101”。

 (11)删除工资表 salary 中姓名为“陈明”的记录。

(12)建立 worker、depart 和 salary 3 个表之间的关系。

 (13) 实施 worker 表的“性别”列默认值为“男”的约束。

(14) 实施 salary 表的“工资”列值限定在 0~9999 的约束。

 (15) 为 worker 表建立外键“部门号”,参考表 depart 的“部门号”列。

(16) 删除(13)小题所建立的约束。

(17)删除(14)小题所建立的约束。

(18) 建立一个规则 sex:@性别='男' OR @性别=‘女',将其绑定到 worker 表的“性别”

(19)解除(18)小题所建立的绑定并删除规则 sex.


一.【实验目的】

了解系统数据库的作用。

1)学会使用 Management Studio 工具创建用户数据库。

2)学会使用 Transact-SQL 语句创建用户数据库表。

3)学会使用 Transact-SQL 语句创建用户数据库表完整性设置。

二.【实验准备】

已经接入局域网的网络实验室。

机器上已安装 SQL Server 2016.

三、【实验内容及步骤】

创建一个名称为 factory 的数据库,要求:

(1)将主数据库文件 factory.mdf 放置在 H:\DBF 文件夹中,其文件大小自动增长为按 8 MB 增长。

(2)将事务日志文件 factory_Jog.ldf 放置在 H:\DBF 文件夹中,其文件大小自动增长为

按 2 MB 增长。

(3)用 create 语句建立职工表 worker,其结构为:职工号,int;姓名,char(8);性别,

char(2);出生日期,datetime;党员否 char(2);参加工作,datetime;部门号,int。其中“职

工号”为主键。

(4)修改 worker 表的结构,添加“E_mail   varchar(20)”字段。

(5)将上例中 worker 表中“E_mail”字段的数据类型改为 varchar(30)

(6)删除 worker 表中的“E_mail”字段

(7)并用 insert 语句在 worker 表中输入如下记录:

职工号

姓名

性别

出生日期

党员否

参加工作

部门号

1

孙华

01/03/52

10/10/70

101

2

陈明

05/08/45

01/01/65

102

3

程西

06/10/80

07/10/02

101

4

孙天奇

03/10/65

07/10/87

102

5

刘夫文

01/11/42

08/10/60

102

6

刘欣

10/08/52

01/07/07

101

7

余慧

12/04/80

07/10/72

103

(8)用 create 语句建立部门表 depart,其结构为:部门号,int;部门名,char(10)。其

中,“部门号”为主键。并用 insert 语句在 depart 表中输入如下记录:

部门号

部门名

101

财务处

102

人事处

103

市场部

(9)用 create 建立职工工资表 salary,其结构为:职工号,int;姓名,char(8):日期,

datetime;工资,decimal(6,1)。其中,“职工号”和“日期”为主键。并用 insert 语句在 salary

表中输入如下记录:

职工号

姓名

日期

工资

1

孙华

01/04/04

1201.5

2

陈明

01/04/04

1350.6

3

程西

01/04/04

750.8

4

孙天奇

01/04/04

900.0

5

刘夫文

01/04/04

2006.8

6

刘欣

01/04/04

1250.0

7

余慧

01/04/04

725.0

(10)将 worker 表中姓名为“陈明”的部门号改为“101”。

(11)删除工资表 salary 中姓名为“陈明”的记录。

(12)建立 worker、depart 和 salary 3 个表之间的关系。

(13) 实施 worker 表的“性别”列默认值为“男”的约束。

(14) 实施 salary 表的“工资”列值限定在 0~9999 的约束。

(15) 为 worker 表建立外键“部门号”,参考表 depart 的“部门号”列。

(16) 删除(13)小题所建立的约束。

(17)删除(14)小题所建立的约束。

(18) 建立一个规则 sex:@性别='男' OR @性别=‘女',将其绑定到 worker 表的“性别”

(19)解除(18)小题所建立的绑定并删除规则 sex.


四.【实验预习】

创建表的方式有界面方式和T-SQL语句。T-SQL命令语句为:CREATE TABLE......

修改表的命令语句为:ALTER TABLE...

删除表的命令语句:DROP TABLE...

插入记录命令语句:INSERT  INTO 表名 values()GO

修改记录命令语句:UPDATE  表名 SET...

删除记录命令语句: DELETE/TRUNCATE TABLE     


五.【实验结果】

(1)将主数据库文件factory.mdf放置在H:\DBF文件夹中,其文件大小自动增长为按5 MB增长。

 

(2)将事务日志文件 factory_Jog.ldf 放置在 H:\DBF 文件夹中,其文件大小自动增长为
按 2 MB 增长。

 (3)用 create 语句建立职工表 worker,其结构为:职工号,int;姓名,char(8);性别,char(2);出生日期,datetime;党员否 char(2);参加工作,datetime;部门号,int。其中“职工号”为主键。
CREATE TABLE worker
(  
   职工号  int        NOT NULL PRIMARY KEY,
姓名   char(8)    NOT NULL,
性别   char(2)     NULL DEFAULT 1,
出生日期 datetime NULL,
党员否  char(2)    NULL DEFAULT 1,
参加工作 datetime NULL,
部门号  int     NOT NULL
)
4)修改 worker 表的结构,添加“E_mail   varchar(20)”字段
ALTER TABLE worker
    ADD E_mail   varchar(20)
5)将上例中 worker 表中“E_mail”字段的数据类型改为 varchar(30)
ALTER TABLE worker
  ALTER COLUMN E_mail   varchar(30)
6)删除 worker 表中的“E_mail”字段
ALTER TABLE worker
    DROP COLUMN E_mail
7)并用 insert 语句在 worker 表中输入如下记录:

 

 (8)用 create 语句建立部门表 depart,其结构为:部门号,int;部门名char(10)。其中,“部门号”为主键。并用 insert 语句在 depart 表中输入如下记录:

 

 (9)用 create 建立职工工资表 salary,其结构为:职工号,int;姓名,char(8):日期,datetime;工资,decimal(6,1)。其中,“职工号”和“日期”为主键。并用 insert 语句在 salary表中输入如下记录:
CREATE TABLE salary
(  
   职工号  int        NOT NULL PRIMARY KEY,
姓名   char(8)    NOT NULL,
日期   datetime    NOT NULL,
工资 decimal(6,1)  NOT NULL
)

(10)将 worker 表中姓名为“陈明”的部门号改为“101”

 

 (11)删除工资表 salary 中姓名为“陈明”的记录。
DELETE  
    FROM  salary
WHERE=’陈明’
12)建立 workerdepart salary 3 个表之间的关系。

          使用界面方式建立外键。

 (13) 实施 worker 表的“性别”列默认值为“男”的约束。
USE factory                               --打开数据库schoolDB
GO
ALTER TABLE worker
ADD CONSTRAINT DF_student_性别 DEFAULT '男' for 性别
(14) 实施 salary 表的“工资”列值限定在 0~9999 的约束。

右键设置 

 

 (15) 为 worker 表建立外键“部门号”,参考表 depart 的“部门号”列。
USE factory                                             --打开数据库schoolDB
IF EXISTS(SELECT * FROM sysobjects WHERE name='worker') 
DROP TABLE worker               --检查student是否已经存在,如果存在,则删除
GO
CREATE TABLE worker
( 	
  	职工号  int        NOT NULL PRIMARY KEY,
	姓名   char(8)    NOT NULL,
	性别   char(2)     NULL DEFAULT 1,
	出生日期 datetime NULL,
	党员否  char(2)    NULL DEFAULT 1,
	参加工作 datetime NULL,
	部门号 int NULL FOREIGN KEY REFERENCES depart(部门号)
	)
(16) 删除(13)小题所建立的约束。
USE factory                        
ALTER TABLE worker
DROP CONSTRAINT DF_student_性别
(17)删除(14)小题所建立的约束。
USE factory                        
ALTER TABLE salary
DROP CONSTRAINT CK_salary_工资
(18) 建立一个规则 sex:@性别='男' OR @性别=‘女',将其绑定到 worker 表的“性别”
create
rule sex as @性别 in ('男','女')
go
exec
sp_bindrule 'sex','worker.性别'
(19)解除(18)小题所建立的绑定并删除规则 sex.
解除:
exec
sp_unbindrule 'worker.性别'
go
删除:
DROP RULE sex

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值