域名預(yù)訂/競(jìng)價(jià),好“米”不錯(cuò)過(guò)
這篇文章主要介紹了圖書(shū)管理系統(tǒng)的sqlserver數(shù)據(jù)庫(kù)設(shè)計(jì)示例,文中通過(guò)E_R圖、數(shù)據(jù)字典、數(shù)據(jù)庫(kù)腳本代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
首先,在寫(xiě)數(shù)據(jù)庫(kù)時(shí)需要遵循以下幾個(gè)原則:
數(shù)據(jù)庫(kù)的命名規(guī)范:
方便代碼的交流和維護(hù)
不影響代碼的效率,不與大眾習(xí)慣沖突
使代碼更美觀,閱讀更方便
使代碼的邏輯更清晰,更易于理解
術(shù)語(yǔ)的定義:
Pascal方法:將標(biāo)識(shí)符的首字母和后面連接的每個(gè)單詞的首字母都大寫(xiě) ,可以對(duì)三字母或更多的字符的標(biāo)識(shí)符使用。例如:BackColor
Camel方法:標(biāo)識(shí)符的首字母小寫(xiě),而后面連接的單詞首字母都大寫(xiě)。例如:backColor
基本原則:
以大小寫(xiě)敏感編寫(xiě)SQL語(yǔ)句
盡量使用Unicode數(shù)據(jù)類(lèi)型
優(yōu)先使用參數(shù)化SQL查詢代替拼接SQL查詢
禁止使用拼音+英語(yǔ)的方式來(lái)命名SQL對(duì)象或變量
盡量使用存儲(chǔ)過(guò)程代替SQL語(yǔ)句
大寫(xiě)t-sql語(yǔ)言的所有關(guān)鍵字,謂詞和系統(tǒng)函數(shù)
其次:
對(duì)數(shù)據(jù)庫(kù)進(jìn)行分析
1.分析數(shù)據(jù)庫(kù),根據(jù)圖書(shū)管理系統(tǒng)的需求分析,列出表
圖書(shū)類(lèi)別:主要包括圖書(shū)的編號(hào),類(lèi)別名稱(chēng)等
圖書(shū)基本信息:主要包括圖書(shū)編號(hào),圖書(shū)名稱(chēng),類(lèi)別編號(hào)等
讀者類(lèi)別:主要包括類(lèi)別編號(hào),類(lèi)別名稱(chēng),借書(shū)最大量等
讀者基本信息:主要包括讀者編號(hào),讀者姓名,性別,住址,讀者類(lèi)別
借閱表:主要包括記錄編號(hào),讀者編號(hào),圖書(shū)編號(hào),借出日期,還入日期。
2。根據(jù)分析的數(shù)據(jù)庫(kù)畫(huà)出實(shí)體圖
CREATE DATABASE BMS
IF OBJECT_ID(N't_booktype',N'U') IS NOT NULL
DROP TABLE t_booktype
CREATE TABLE t_booktype(
typeno int primary key not null,
typename varchar(30) not null
)
IF OBJECT_ID(N't_books',N'U') IS NOT NULL
DROP TABLE t_books
CREATE TABLE t_books(
bookno int primary key not null,
bookname varchar(30) not null,
typeno int not null
)
IF OBJECT_ID(N't_readertype',N'U') IS NOT NULL
DROP TABLE t_readertype
CREATE TABLE t_readertype(
readertypeno int primary key not null,
readername varchar(30) not null,
lendnumber int not null
)
IF OBJECT_ID(N't_readerinfo',N'U') IS NOT NULL
DROP TABLE t_readerinfo
CREATE TABLE t_readerinfo(
readerno int primary key not null,
readername varchar(30) not null,
readeraddress varchar(30) not null,
readertypeno int not null
)
IF OBJECT_ID(N't_lendbook',N'U') IS NOT NULL
DROP TABLE t_lendbook
CREATE TABLE t_lendbook(
recordno int primary key not null,
readerno int not null,
bookno int not null,
lendtime datetime ,
returntime datetime
)
INSERT INTO t_booktype
VALUES('1005','懸疑類(lèi)')
INSERT INTO t_books
VALUES('1025','盜墓筆記','1005')
INSERT INTO t_readertype
VALUES('0005','黃秋萍',20)
INSERT INTO t_readerinfo
VALUES('0005','黃秋萍','南昌市','0005')
INSERT INTO t_lendbook
VALUES('0005','0002','1013','2004-07-28','2004-11-16')
SELECT *
FROM t_books
UPDATE t_books
SET bookname='深入理解計(jì)算機(jī)系統(tǒng)'
WHERE bookno='1001'
UPDATE t_readertype
SET readername='吳嬌'
WHERE readertypeno='0001'
SELECT *
FROM t_readerinfo
--查詢圖書(shū)名字
SELECT bookname
FROM t_books
--查詢圖書(shū)類(lèi)別
SELECT typename
FROM t_booktype
--查詢名字叫吳嬌的借書(shū)記錄
SELECT t_readerinfo.readername,t_lendbook.lendtime,t_lendbook.returntime
FROM t_readerinfo join t_lendbook on t_readerinfo.readerno=t_lendbook.readerno
WHERE t_readerinfo.readername='吳嬌'
這里僅進(jìn)行了部分代碼的實(shí)現(xiàn)。
如有哪里不正確望指出!
到此這篇關(guān)于圖書(shū)管理系統(tǒng)的sqlserver數(shù)據(jù)庫(kù)設(shè)計(jì)示例的文章就介紹到這了,更多相關(guān)圖書(shū)管理系統(tǒng) sqlserver數(shù)據(jù)庫(kù)設(shè)計(jì)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
來(lái)源:腳本之家
鏈接:https://www.jb51.net/article/192755.htm
申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!