数据库原理及应用崔巍书后Word文档下载推荐.docx

上传人:b****3 文档编号:16597377 上传时间:2022-11-24 格式:DOCX 页数:16 大小:43.40KB
下载 相关 举报
数据库原理及应用崔巍书后Word文档下载推荐.docx_第1页
第1页 / 共16页
数据库原理及应用崔巍书后Word文档下载推荐.docx_第2页
第2页 / 共16页
数据库原理及应用崔巍书后Word文档下载推荐.docx_第3页
第3页 / 共16页
数据库原理及应用崔巍书后Word文档下载推荐.docx_第4页
第4页 / 共16页
数据库原理及应用崔巍书后Word文档下载推荐.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

数据库原理及应用崔巍书后Word文档下载推荐.docx

《数据库原理及应用崔巍书后Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据库原理及应用崔巍书后Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。

数据库原理及应用崔巍书后Word文档下载推荐.docx

test3

(name=test3_dat1,

\DB\data\test3dat1.mdf'

(name=test3_dat2,

\DB\data\test3dat2.mdf'

filegroupg2

(name=test3_dat3,

d:

\DB\data\test3dat3.ndf'

(name=test3_dat4,

\DB\data\test3dat4.ndf'

filegroupg3

(name=test3_dat5,

e:

\DB\data\test3dat5.ndf'

(name=test3_dat6,

\DB\data\test3dat6.ndf'

(name=test3_log,

\DB\data\test3log.ldf'

--4

alter 

add 

file

(name=test1new_dat,

\DB\data\test1newdat.ndf'

size=5MB)

--5

modify 

(name=test1_dat,

size=15MB)

--6

dropdatabasetest3

四、实验数据、结果分析:

若没有指定size,则默认为1MB,没有指定Maxsize,文件可以增长到磁盘满为止,没有指定Filegrowth,则默认为10%。

五、总结:

CREATEDATABASEdataname 

创建数据库

ALTERDATABASEdatabase 

修改数据库

DROPDATABASEdataname 

删除数据库

数据库系统及应用上机实验报告2

掌握表和索引的建立方法及表结构的修改方法,并实践DBMS提供的数据完整性功能,加深对数据完整性的理解。

建立表,修改表结构,建立索引,数据完整性描述。

三.、程序源代码:

订单管理

table 

客户(

客户号 

char(8) 

primary 

key 

check(客户号 

like 

'

[A-z]%'

客户名称 

varchar(40) 

not 

null,

联系人 

char(8),

地址 

varchar(40),

邮政编码 

char(6) 

check(邮政编码 

[0-9][0-9][0-9][0-9][0-9][0-9]'

电话 

char(12) 

check(电话 

1[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'

))

create 

产品(

产品号 

check(产品号 

[A-Z][A-Z]%'

产品名称 

规格说明 

char(40) 

constraint 

uni 

unique,

单价 

smallmoney 

dj 

check(单价>

0))

table 

订购单(

no 

tnull 

foreign 

references 

客户,

订单号 

key,

订购日期 

datetime 

default 

getdate())

订单名细(

订购单,

序号 

tinyint,

null 

产品,

数量 

smallin 

tconstraint 

sl 

check(数量>

0),

primarykey(订单号,序号))

--修改产品表

alter 

产品drop 

uni

产品alter 

column 

varchar(40)

产品add 

unique 

(规格说明)

订购单 

 

完成日期 

null

订单名细 

drop 

sl

add 

0and 

数量<

1000)

--建立索引

index 

cus_idx 

on 

客户(客户名称)

unique 

gdn_nui 

产品(产品名称)

--3 

创建表时,primarykey 

隐式地创建了聚集索引,而一个表中只能有一个聚集索引。

clustered 

oid_clus 

订购单(订单号) 

--失败

item_idx 

订单名细(订单号,序号,数量 

desc)

数据库系统及应用上机实验报告3

为实验2建立的表设计一组数据进行插入、删除、修改等操作,并体会数据完整性约束的作用,加深对数据完整性及其约束的理解。

数据的插入、更新和删除。

--1、部分记录

insert 

into 

客户 

values('

C001'

'

A公司'

小明'

北京'

123456'

143567568457'

C002'

B公司'

小李'

上海'

234567'

146389045634'

客户(客户号,客户名称) 

C009'

J商场'

产品 

GD001'

iphone'

4s'

5000'

GD002'

ipad'

2g'

5500'

产品(产品号,产品名称) 

GD010'

MacPro'

订购单(客户号,订单号) 

or01'

or02'

订购单(订单号) 

or19'

1'

4'

2'

3'

6'

订单名细(订单号,序号,产品号) 

or14'

28'

GD006'

delete 

from 

where 

客户号='

--受参照完整性约束

from订购单 

订单号='

update 

订购单 

set 

订单号=null 

--受实体完整性约束

C011'

or04'

or07'

--更新成功

订单名细 

数量=0 

where序号='

9'

--受用户定义完整性约束

数量=数量+10

订购单

订购单.订单号=订单名细.订单号 

and 

订单名细

在删除客户号为“C002”的记录时无法删除,因为客户表被订购单表参照。

删除订购单号为“or01”的记录时无法删除,因为订单名细表参照订购单表。

第一个更新根据实体完整性约束,订单号是主关键字,不能为空值。

第二个更新根据参照完整性约束,订购单表参照客户表,而客户表中没有客户号为“C011”的客户。

第四个更新根据用户定义完整性约束,数量必须为正整数。

使客户号为C002的订购单的订购数量增加10.

删掉客户号为C002的订单名细记录。

插入:

INSERTINTO<

表名>

[(<

列名>

[,<

…])]

values(<

表达式>

…]) 

更新:

update<

set<

=<

…]

[[from<

]where<

逻辑表达式>

]

删除:

DELETEFROM<

[[FROM<

]WHERE<

完整性约束影响插入、更新和删除等操作

数据库系统及应用上机实验报告4

熟练掌握SQLSELECT语句,能够运用该语句完成各种查询。

用SQLSELECT语句完成各种数据查询。

select*from客户

select客户号from订购单

select*from产品where单价>

=5000

5000and产品名称='

Macbook'

6000and产品名称in('

selectc.客户名称,c.联系人,c.电话,o.订单号

from客户c,订购单o

whereo.订购日期between'

2011-10-30'

and'

2011-12-1'

andc.客户号=o.客户号 

--7

selectdistinct客户名称,联系人,电话

from客户c,产品g,订购单o,订单名细d

where产品名称='

andg.产品号=d.产品号

andd.订单号=o.订单号

ando.客户号=c.客户号

--8

select*from订单名细

where产品号in(

select产品号

from产品

--9

select*from订购单

where订单号in(

select订单号

from订单名细

where数量>

10)

--10

select*from产品where单价=(select单价from产品where规格说明='

--11

select*from产品where单价between1000and5000

--12

select*from客户where客户名称like'

%集团'

--13

select*from客户where客户名称notlike'

%商场'

--14

select*from产品orderby单价

--15

select*

orderby产品名称,单价

--16

selectCOUNT(产品号)

--17

selectSUM(数量)

where产品号=(select产品号

--18

selectSUM(数量*单价)总金额

from产品,订单名细

where产品.产品号=订单名细.产品号

and产品名称='

ipodnano'

--19

selectCOUNT(distinct订单号)as订购单个数,AVG(数量*单价)as平均金额

--20

select订单号,COUNT(订单号)项目数,SUM(g.单价*o.数量)总金额

from产品g,订单名细o

whereg.产品号=o.产品号

groupby订单号

--21

selecti.订单号,MAX(数量*单价)最高金额,MIN(数量*单价)最低金额

from订购单o,产品g,订单名细i

whereo.订单号=i.订单号

andg.产品号=i.产品号

groupbyi.订单号

--22

select订单号,COUNT(*)项目数,AVG(数量*单价)平均金额

from产品g,订单名细i

whereg.产品号=i.产品号

havingCOUNT(*)>

=2

--23

select客户名称,联系人,电话,订单号

wherec.客户号=o.客户号

and订购日期isnull

--24

select客户名称,联系人,电话,订单号,订购日期

from客户,订购单

where客户.客户号=订购单.客户号

and订购日期>

2011-10-10'

--25

from产品outa

where单价=(selectMAX(单价)

from产品innera

whereouta.产品名称=innera.产品名称)

--26

select客户号

from客户

wherenotexists(

from订购单

where客户.客户号=订购单.客户号)

--27

whereexists(

--28

select产品名称

where单价=any(select单价/2 

from产品)

--29

where单价>

all(selectmax(单价)from产品)

--30

--cross

select*from客户crossjoin订购单

--inner

select*from客户innerjoin订购单

on客户.客户号=订购单.客户号

--left

select客户.*,订单号,订购日期

from客户leftjoin订购单

--right

from客户rightjoin订购单

--full

from客户fulljoin订购单

数据库系统及应用上机实验报告5

理解视图的概念,掌握视图的使用方法。

定义视图,并在视图上完成查询、插入、更新和删除操作。

--1)、基于单个表按投影操作定义视图

createviewv_cusas

select客户号,客户名称

--使用

select*fromv_cus

--2)、基于单个表按选择操作定义视图

createviewv_orderas

where客户号='

select*fromv_order

--3)、基于单个表按选择和投影操作定义视图

createviewv_cussas

select客户名称,联系人,电话

C003'

select*fromv_cuss

--4)、基于多个表根据连接操作定义视图

createviewv_joinas

from客户join订购单

select*fromv_join

--5)、基于多个表根据嵌套查询定义视图

createviewv_itemas

select*fromv_item

--6)、查定义含有虚字段的视图

createviewv_items(订单号,序号,产品号,数量,总金额)as

selecti.*,i.数量*g.单价

from订单名细i,产品g

wherei.产品号=g.产品号

select*fromv_items

--在视图上查询

--在视图上插入

insertintov_cusvalues('

C012'

Google'

--在视图上更新

updatev_orderset订购日期='

2011-11-29'

--在视图上删除

deletefromv_cus

数据库系统及应用上机实验报告7

理解存储过程的概念,掌握存储过程的使用方法,加深对客户/服务器机制的理解。

存储过程的建立和执行。

--1、查询单价范围在X元到Y元内的产品信息

createprocsp_getgoods

@price1money,@price2money

as

where单价>

@price1and单价<

@price2

if@@ERROR=0 

return0

else

return-1

--执行

declare@statusint

execute@status=sp_getgoods1000,6000

print@status

--2、查询在某年某月某日之后签订的订购单的客户信息

createprocsp_or_cus

@datesdatetime

@dates

declare@status1int

execute@status1=sp_or_cus'

2011-10-27'

print@status1

--3、将某产品的订购日期统一修改为一个指定日期

createprocsp_upd_date

@gdnamevarchar(40),@odatedatetime

update订购单

set订购日期=@odate

where产品名称=@gdname))

declare@status2int

execute@status2=sp_upd_date'

2011-10-23'

print@status2

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 韩语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1