------新增library資料庫
use master
if exists(select * from sysdatabases where name='library')
drop database library
create database library
on primary
(--主資料檔案的具體描述
name='library_data',
filename='d:\\library_data.mdf',
size=5mb,
filegrowth=15%)
log on(--次資料檔案的具體描述
name='library_log',
filename='d:\\library_log.ldf',
size=1mb,
filegrowth=15%
)------------------------------------建立表 book
use library
go create table book
(bid nvarchar(50) not null,
bname nvarchar(50) not null,
author nvarchar(50) null,
pubcomp nvarchar(50) null,
pubdate datetime null,
bcount int null,
price money null,
) -----------------------------建立表reader
use library
go create table reader
(rid nvarchar(50) not null,
rname nvarchar(50) not null,
lendnum int null,
raddress nvarchar(50) null
) -------------------------建立borrow表
use library
go create table borrow
(rid nvarchar(50) not null,
bid nvarchar(50) not null,
lenddate datetime not null,
willdate datetime null,
returndate datetime null
) -------------------------建立penalty表
use library
go create table penalty
(rid nvarchar(50) not null,
bid nvarchar(50) not null,
pdate datetime not null,
ptype int null,
amount money null
) ----------------新增資料
-----------------------book約束
--主鍵 模糊查詢
alter table book
add constraint pk_bid primary key(bid)
alter table book
add constraint ck_bid check(bid like 'isbn%')
--日期
alter table book
add constraint ck_pubdate check(pubdate=1)
alter table book
add constraint ck_price check(price>0)
----------------reader約束
alter table reader
add constraint pk_rid primary key(rid)
alter table reader
add constraint ck_lendnum check(lendnum>0)
------------------borrow約束
alter table borrow
add constraint pk_lenddate primary key(lenddate)
alter table borrow
add constraint df_lenddate default(getdate()) for lenddate
alter table borrow
add constraint ck_willdate check(willdate>lenddate)
alter table borrow
add constraint df_willdate default(dateadd(mm,1,getdate())) for willdate
alter table borrow
add constraint df_returndate default(null) for returndate
alter table borrow
add constraint fk_rid foreign key(rid) references reader(rid)
alter table borrow
add constraint fk_bid foreign key(bid) references book(bid)
-------------------penalty約束
alter table penalty
add constraint pk_pdate primary key(pdate)
alter table penalty
add constraint df_pdate default(getdate()) for pdate
alter table penalty
add constraint ck_ptype check (1='延期' or 2='損壞' or 3='丟失')
alter table penalty
add constraint fk_rid foreign key(rid) references reader(rid)
alter table penalty
add constraint fk_bid foreign key(bid) references book(bid)
第二章 課後作業 2 82,2 90
a 格式 seeeeeee emmmmmmm mmmmmmmm mmmmmmmm pi的二進位制數表示為 0 10000000 10010010000111111101011,s 為0,是個正數。e 為 10000000 轉為10進製為128,128 127 1,即實際指數部分為1.m 為 1001...
資料庫程式設計 第二章,課後作業
1,使用子查詢獲得當前沒有被讀者借閱的圖書資訊 select bname as 圖書名稱 bid as 圖書編號 author as 作者名稱 pubcomp as 出版社 price as 單價 from book where bid not in select nif from borrow 2...
S2 優化資料庫設計 第二章上級
use master goif exists select from sysdatabases where name myschool1 判斷 drop database myschool1 刪除語句 create database myschool1 執行 on name myschool10.m...