【正文】
select borrowid = 借閱編號(hào) , borrowdate = 借出日期 , renewdate = 續(xù)借日期 from inserted if (renewdate is null) begin update 借閱信息 set 應(yīng)還日期 = dateadd(day,30,borrowdate) where 借閱編號(hào) = borrowid end else begin update 借閱信 息 set 應(yīng)還日期 = dateadd(day,30,renewdate) where 借閱編號(hào) = borrowid end GO 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告 17 SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO 第三部:向數(shù)據(jù)庫(kù)表導(dǎo)入數(shù)據(jù): INSERT INTO 讀者信息 (讀者號(hào) ,姓名 ,性別 ,類(lèi)別 ,出生日期 ,聯(lián)系電話(huà) ,住址 ) VALUES(39。39。+columnsAndhead+39。 SELECT columns = left(columns,len(columns)5) CLOSE a DEALLOCATE a exec(39。 END FETCH NEXT FROM a INTO IsIdentity, columnName ,TypeName END SELECT columnsAndhead = left(columnsAndhead,len(columnsAndhead)2) +39。 END SET columnsAndhead = columnsAndhead + 39。39。39。39。39。39。39。+ columnName + 39。39。39。+columnName +39。,39。,39。,39。,39。,39。) AS IsIdentity, a.[NAME] AS ColumnName ,b.[NAME] AS TypeName FROM syscolumns a INNER JOIN systypes b ON = AND = WHERE a.[id]=(SELECT [id] FROM sysobjects WHERE [NAME]=tableName) OPEN a FETCH NEXT FROM a INTO IsIdentity, columnName ,TypeName WHILE FETCH_STATUS = 0 BEGIN IF IsIdentity =0 BEGIN IF TypeName IN (39。 SET columns = 39。)) ALTER TABLE 借閱信息 ADD CONSTRAINT FK_借閱信息 _讀者信息 FOREIGN KEY (讀者號(hào) ) REFERENCES 讀者信息 (讀者號(hào) ) ON DELETE CASCADE ON UPDATE CASCADE , CONSTRAINT FK_借閱信息 _圖 書(shū)信息 FOREIGN KEY (圖書(shū)號(hào) ) REFERENCES 圖書(shū)信息 (圖書(shū)號(hào) ) ON DELETE CASCADE ON UPDATE CASCADE 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告 15 ALTER TABLE 罰款信息 ADD CONSTRAINT FK_罰款信息 _讀者信息 FOREIGN KEY (讀者號(hào) ) REFERENCES 讀者信息 (讀者號(hào) ) ON DELETE CASCADE ON UPDATE CASCADE , CONSTRAINT FK_罰款信息 _圖書(shū)信息 FOREIGN KEY (圖書(shū)號(hào) ) REFERENCES 圖書(shū)信息 (圖書(shū)號(hào) ) ON DELETE CASCADE ON UPDATE CASCADE SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO CREATE Procedure DBGenData tableName Varchar(100)表名 AS DECLARE IsIdentity INT DECLARE columnName VARCHAR(100)列名 DECLARE TypeName VARCHAR(100)數(shù)據(jù)類(lèi)型 DECLARE columns VARCHAR(3000) DECLARE columnsAndhead VARCHAR(3000) SET columnsAndhead = 39。 or (借閱狀態(tài) = 39。 or 性別 = 39。 or 類(lèi)別 = 39。), CONSTRAINT CK_kucun CHECK (庫(kù)存總量 = 現(xiàn)存量 ) ALTER TABLE 讀者信息 ADD CONSTRAINT CK_讀者號(hào) CHECK (讀者號(hào) like 39。, filename = 39。 參考文獻(xiàn): [1] 王珊,薩師煊編著.《數(shù)據(jù)庫(kù)系統(tǒng)概論》.北京:高等教育出版社, 2021 [2] 李昆 編著 .《 SQL SERVER 2021 課程設(shè)計(jì)案例精編 》.北京: 中國(guó)水利水電出版社 , 2021 [3] 劉大偉,馬傳寶編著 《數(shù)據(jù)庫(kù)項(xiàng)目案例導(dǎo)航》 北京:清華大學(xué)出版社 2021 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告 13 附錄: 建立 SQL 數(shù)據(jù)庫(kù)的 SQL語(yǔ)句: 第一步:建立 library 數(shù)據(jù)庫(kù): create database library on ( name = librarydata, filename = 39。 圖書(shū)館管理系統(tǒng) 雖然設(shè)計(jì)完成 ,但是還是有好些不足的地方。 通 過(guò) SQL SEVER 2021 的查詢(xún)分析器,用 SQL 語(yǔ)句建立數(shù)據(jù)庫(kù)和數(shù)據(jù)表 建立數(shù)據(jù)庫(kù)基本步驟如下: 創(chuàng)建 名稱(chēng)為