版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課程設(shè)計(jì)報(bào)告書</b></p><p> 課程名稱: 數(shù)據(jù)庫原理與應(yīng)用 </p><p> 題 目: BBS論壇數(shù)據(jù)庫設(shè)計(jì)開發(fā) </p><p> 系 名: 信息工程系 </p><p><b> 課程設(shè)計(jì)任務(wù)書</
2、b></p><p> 設(shè)計(jì)題目: BBS論壇數(shù)據(jù)庫設(shè)計(jì)開發(fā)</p><p> 要求完成的主要任務(wù):</p><p> ?。òㄕn程設(shè)計(jì)工作量及其技術(shù)要求,以及說明書撰寫等具體要求)</p><p> 創(chuàng)建數(shù)據(jù)庫BBS,數(shù)據(jù)表,并建立主外鍵、約束、建立表測(cè)試數(shù)據(jù);</p><p><b> 創(chuàng)
3、建視圖</b></p><p><b> 實(shí)現(xiàn)以下功能:</b></p><p><b> ?。?)簡單查詢;</b></p><p><b> ?。?)連接查詢;</b></p><p><b> ?。?)嵌套查詢;</b></p&g
4、t;<p><b> ?。?)創(chuàng)建觸發(fā)器;</b></p><p> ?。?)創(chuàng)建存儲(chǔ)過程;+</p><p> 設(shè)計(jì)報(bào)告撰寫格式要求:</p><p> 1、明確課程設(shè)計(jì)的目的和重要性,認(rèn)真領(lǐng)會(huì)課程設(shè)計(jì)的題目,讀懂課程設(shè)計(jì)指導(dǎo)書的要求,學(xué)會(huì)設(shè)計(jì)的基本方法與步驟,學(xué)會(huì)如何運(yùn)用前修知識(shí)與收集、歸納相關(guān)資料解決具體問題的方法。嚴(yán)格
5、要求自己,要獨(dú)立思考,按時(shí)、獨(dú)立完成課程設(shè)計(jì)任務(wù)。</p><p> 2、設(shè)計(jì)報(bào)告:要求層次清楚、整潔規(guī)范、不得相互抄襲,凡正文內(nèi)容有整段完全相同者一律以抄襲論處。設(shè)計(jì)報(bào)告正文字?jǐn)?shù)不少于0.2萬字(不包括附錄)</p><p><b> 時(shí)間安排:</b></p><p> 消化資料、系統(tǒng)調(diào)查 1天</p>
6、<p> 系統(tǒng)分析、總體設(shè)計(jì),實(shí)施計(jì)劃、撰寫報(bào)告 3天</p><p> 演示、驗(yàn)收 1天</p><p> 指 導(dǎo) 教 師 簽 字: 2011年 7 月 1 日</p><p> 系 主 任 簽 字:
7、 2011 年 7 月 1 日</p><p><b> 課程設(shè)計(jì)報(bào)告書</b></p><p><b> 第一章 需求分析</b></p><p> 1.1 BBS的功能與應(yīng)用需求</p><p> 1.1.1BBS的功能</p><
8、;p> 論壇又名BBS,全稱為Bulletin Board System(電子公告板)或者Bulletin Board Service(公告板服務(wù))。它是Internet上的一種電子信息服務(wù)系統(tǒng)。它提供一塊公共電子白板,每個(gè)用戶都可以在上面書寫,可發(fā)布信息或提出看法。它是一種交互性強(qiáng),內(nèi)容豐富而即使的電子信息服務(wù)系統(tǒng)。用戶在BBS站點(diǎn)上可以獲得各種信息服務(wù)、發(fā)布信息、進(jìn)行討論、聊天等等。像日常生活中的黑板報(bào)一樣,論壇按不同的主題
9、分為許多版塊,版面的設(shè)立依據(jù)是大多數(shù)擁護(hù)的要求和喜好,用戶可以閱讀別人關(guān)于某個(gè)主題的看法,也可以將自己的想法毫無保留地帖到論壇中。</p><p> 隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,BBS論壇的功能越來越強(qiáng)大,目前BBS的主要功能有以下幾點(diǎn):</p><p> (1) 供用戶自我選擇閱讀若干感興趣的專業(yè)組和討論組內(nèi)的信息。</p><p> (2) 可隨意檢查是
10、否有新消息發(fā)布并選擇閱讀。</p><p> (3) 用戶可在站點(diǎn)內(nèi)發(fā)布消息或文章供他人查閱。</p><p> (4) 用戶可就站點(diǎn)內(nèi)其他人的消息或文章進(jìn)行評(píng)論。</p><p> (5) 同一站點(diǎn)內(nèi)的用戶互通電子郵件, 設(shè)定好友名單</p><p><b> 1.1.2應(yīng)用需求</b></p>
11、<p> 現(xiàn)實(shí)生活中的交流存在時(shí)間和空間上的局限性,交流人群范圍的狹小,以及間斷的交流,不能保證信息的準(zhǔn)確性和可取性。因此,用戶需要通過網(wǎng)上論壇也就是BBS的交流擴(kuò)大交流面,同時(shí)可以從多方面獲得自己的及時(shí)需求。同時(shí)信息時(shí)代迫切要求信息傳播速度加快,局部范圍的信息交流只會(huì)減緩前進(jìn)的步伐。BBS系統(tǒng)的開發(fā)能為分散于五湖四海的人提供一個(gè)提供一個(gè)共同交流、學(xué)習(xí)、傾吐心聲的平臺(tái),實(shí)現(xiàn)來自不同地方用戶的極強(qiáng)的信息互動(dòng)性,用戶在獲得自己所
12、需要的信息的同時(shí)也可以廣交朋友拓展自己的視野和擴(kuò)大自己的社交面。</p><p><b> 1.2需求設(shè)計(jì)</b></p><p> 根據(jù)BBS的功能與應(yīng)用需求的簡要介紹,可以得出設(shè)計(jì)BBS系統(tǒng)所要的基本實(shí)體有BBSUser(用戶)、BBSSection(版塊)、BBSTopic(主貼)、BBSReply(回復(fù)貼)。</p><p><
13、;b> 1.3數(shù)據(jù)字典</b></p><p> 表1-3-1 BBSUsers 用戶信息表</p><p> 表1-3-2 BBSTopic主貼信息表格</p><p> 表1-3-3 BBSSection板塊信息</p><p> 表1-3-4 BBSReply回帖信息表</p><
14、p><b> 第二章 概要設(shè)計(jì)</b></p><p><b> 2.1基本概念介紹</b></p><p> ⑴實(shí)體:現(xiàn)實(shí)世界中的各種事物的抽象。實(shí)體可以是具體的各種事物,如學(xué)生、教師、倉庫、圖書館等;也可以是抽象的概念,如課程、部門、學(xué)校等。</p><p> ?、坡?lián)系:兩個(gè)實(shí)體集之間的聯(lián)系??梢苑譃槿悾?/p>
15、</p><p> ?、僖粚?duì)一聯(lián)系(1:1)</p><p> 如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中最多有一個(gè)實(shí)體與之聯(lián)系,反之亦然,則稱實(shí)體集A和實(shí)體集B具有一對(duì)一聯(lián)系,記作1:1。</p><p> ②一對(duì)多聯(lián)系(1:n)</p><p> 如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中最多有n(n≧1)個(gè)實(shí)體與之聯(lián)系,對(duì)于實(shí)體集
16、B中的每一個(gè)實(shí)體,實(shí)體集A中最多有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A和實(shí)體集B具有一對(duì)多聯(lián)系,記作1:n。</p><p> ③多對(duì)多聯(lián)系(m:n)</p><p> 如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中最多有n(n≧1)個(gè)實(shí)體與之聯(lián)系,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體A中最多有m(m≧1)個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A和實(shí)體集B具有多對(duì)多聯(lián)系,記作m:n。</p>&l
17、t;p> ?、菍傩裕好枋鰧?shí)體特征或性質(zhì)。如學(xué)生實(shí)體的屬性有:學(xué)號(hào)、姓名、性別、年齡等。課程實(shí)體的屬性有:課程號(hào)、課程名、學(xué)分等。</p><p><b> 2.2實(shí)體E-R圖</b></p><p> 2.2.1用戶E-R圖</p><p> 2.2.2主貼E-R圖</p><p> 2.2.3版塊E-R圖
18、</p><p> 2.2.4回帖E-R圖</p><p> 2.3實(shí)體總體E-R圖</p><p><b> 3.2實(shí)體聯(lián)系圖</b></p><p><b> 第三章詳細(xì)設(shè)計(jì)</b></p><p><b> 3.1程序設(shè)計(jì)</b><
19、/p><p> 3.1.1創(chuàng)建數(shù)據(jù)庫</p><p> create database BBS</p><p> on primary</p><p><b> (</b></p><p> name = BBS_data, --邏輯名</p><p> filen
20、ame ='d:\BBS_data.mdf', --物理文件</p><p> size = 20MB, --初始大小</p><p> filegrowth=10%, --文件增長率</p><p> maxsize = 200MB --初始大小</p><p><b> )</b>&l
21、t;/p><p><b> log on</b></p><p><b> (</b></p><p> name =bbs_log, --邏輯名</p><p> filename ='d:\bbs_data.ldf', --物理文件</p><p>
22、 size =10mb, --初始大小</p><p> filegrowth = 10%,--文件增長率</p><p> maxsize = 100MB --最大尺寸</p><p><b> )</b></p><p> 3.1.2創(chuàng)建用戶表</p><p> create t
23、able BBSUsers</p><p><b> (</b></p><p> UID int constraint pk_UID primary key,--用戶編號(hào)</p><p> UName char(8) not null, --用戶姓名</p><p> UPassword char(16) co
24、nstraint df_UPassword default '888888',--用戶密碼</p><p> UEmail char(20) not null constraint ck_Uemail check(UEmail like'%@%.%'),--用戶Email</p><p> UBirthday datetime not null,--用
25、戶生日</p><p> Usex int constraint df_Usex default '1', --用戶性別</p><p> UClass int constraint df_UClass default '1', --用戶等級(jí)</p><p> UStatement varchar(150)not null,
26、 --用戶說明</p><p> URegDate datetime not null default getdate(), --用戶注冊(cè)時(shí)間</p><p> UState tinyint constraint df_UState default '1', --用戶狀態(tài) </p><p> UPoint int con
27、straint df_UPoint default '20' , --用戶積分 </p><p> constraint ck_UPassword check(UPassword like '______')</p><p><b> )</b></p><p> 3.1.3
28、創(chuàng)建版塊表</p><p> create table BBSSection</p><p><b> (</b></p><p> SID int constraint pk_SID primary key,--版塊編號(hào)</p><p> SName char(20),--版塊名稱 </p>
29、<p> SMasterID int, --版主編號(hào) </p><p> SStatement varchar(100), --版塊說明 </p><p> SClickCount int constraint df_SClickCount default '0', --版塊點(diǎn)擊次數(shù) </p><p> STopicCount
30、int constraint df_STopicCount default '0' --版塊主題數(shù) </p><p><b> )</b></p><p> 3.1.3創(chuàng)建主貼表</p><p> create table BBSTopic</p><p><b> (</b&
31、gt;</p><p> TID int constraint pk_tid primary key, --主貼編號(hào)</p><p> TSID int not null, --主貼板塊編號(hào)</p><p> TUID int not null, --主貼用戶編號(hào)</p><p> TReplyCount int not
32、null, --主貼回復(fù)次數(shù)</p><p> TEmotion char(10) not null, --主貼表情</p><p> TTopic varchar(16) not null CONSTRAINT ck_TTopic check(TTopic not like'%''%'), --主貼標(biāo)題</p><p> TC
33、ontents text not null, --主貼內(nèi)容</p><p> TTime datetime not null default getdate() ,--發(fā)帖時(shí)間</p><p> TClickCount int not null, --主貼點(diǎn)擊次數(shù) </p><p> TLastClickT datetime not null ,</p
34、><p> CONSTRAINT [CK_TLC] CHECK ([TLastClickT]>=TTime) --主貼最后點(diǎn)擊時(shí)間 </p><p><b> )</b></p><p> 3.1.4創(chuàng)建回復(fù)貼表</p><p> create table BBSReply</p><p&
35、gt;<b> (</b></p><p> RID int constraint pk_RID primary key,--回復(fù)編號(hào) </p><p> RTID int,--回復(fù)帖子編號(hào) </p><p> RSID int,--回復(fù)版塊編號(hào) </p><p> RUID int,--回復(fù)用
36、戶編號(hào) </p><p> REmotion char(10),--回復(fù)表情 </p><p> RTopic varchar(20),--回帖主題</p><p> RContents text,--回帖內(nèi)容</p><p> RTime datetime default getdate(),--回帖時(shí)間</p>&l
37、t;p> RClickCount int,--回帖點(diǎn)擊次數(shù)</p><p><b> )</b></p><p> 3.1.5創(chuàng)建各表之間的聯(lián)系</p><p><b> --建立聯(lián)系</b></p><p> alter table BBSTopic</p><
38、p> add constraint fk1_BBSTopic_BBSUsers foreign key(tuid) references BBSUsers(UID) --一個(gè)用戶可以發(fā)表多篇主帖內(nèi)容</p><p> alter table BBSReply</p><p> add constraint fk1_BBSReply_BBSTopic foreign key(R
39、TID) references BBSTopic(TID) --一篇主帖能夠?qū)?yīng)多條回帖</p><p> alter table BBSReply</p><p> add constraint fk1_BBSReply_BBSUsers foreign key(RUID) references BBSUsers(UID) --一個(gè)用戶可以發(fā)表多條回帖內(nèi)容</p>
40、<p> alter table BBSTopic</p><p> add constraint fk1_BBSTopic_BBSSection foreign key(TSID) references BBSSection(SID) --一個(gè)版塊可以包含多篇主帖</p><p> alter table BBSReply</p><p>
41、add constraint fk1_BBSReply_BBSSection foreign key(RSID) references BBSSection(SID) --一個(gè)版塊可以包含多篇回帖</p><p> alter table BBSSection</p><p> add constraint fk1_BBSSection_BBSUsers foreign key(SM
42、asterID) references BBSUsers(UID) --一個(gè)用戶可以管理多個(gè)版塊</p><p> 3.1.6插入用戶信息(注冊(cè)新用戶) </p><p><b> insert</b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthd
43、ay,USex,UClass,UStatement,URegDate,UState)</p><p> values('1001' ,'無敵游客','159357','auroral@163.com','1991-5-12','1','','瘋子','2010-5-7'
44、,'2')</p><p><b> insert</b></p><p> into BBSUsers(UId,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p> values('1002
45、' ,'熬吧馬','654321','shanhu@yahoo.com.cn','1989-8-30','1','','愛吧','2011-4-7','2','25')</p><p><b> insert</b><
46、/p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p> values('1003' ,'真?zhèn)五?#39;,'158664','cookie@qq.com.cn',
47、'1992-1-3','2','','快樂','2009-5-7','2','103')</p><p><b> insert</b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthda
48、y,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p> values('1004' ,'地球字幕','175175','ibook@126.com.cn','1990-7-4','2','','自我','2008-5-
49、4','2','2')</p><p><b> insert</b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p>
50、 values('1005' ,'無傷大雅','198755','ipd123@139.com.cn','1988-1-4','1','','和諧','2000-12-12','1','100')</p><p><b> i
51、nsert</b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p> values('1006' ,'回來吧主','192445','zh
52、enmi@sohu.com.cn','1994-12-14','2','','低調(diào)','2000-12-12','1','97')</p><p><b> 3.1.7創(chuàng)建版塊</b></p><p><b> insert</b
53、></p><p> into BBSSection(SID,SName,SMasterID,SStatement,STopicCount)</p><p> values('01' ,'灌水區(qū)','1006','有什么您就說','5')</p><p><b>
54、insert</b></p><p> into BBSSection(SID,SName,SMasterID,SStatement,SClickCount,STopicCount)</p><p> values('02' ,'魔獸貼吧','1005','請(qǐng)不要放水貼!','4','1
55、0')</p><p><b> 3.1.8發(fā)帖</b></p><p><b> insert</b></p><p> into BBSTopic(TID,TSID,TUID,TReplyCount,TEmotion,TTopic,TContents ,TTime,TClickCount,TLastCli
56、ckT)</p><p> values('001' ,'01','1005','5',''-~','無聊來冒個(gè)泡的。。','無聊','2011-1-10','5','2011-7-4')</p><p><b>
57、; insert</b></p><p> into BBSTopic(TID,TSID,TUID,TReplyCount,TEmotion,TTopic,TContents ,TTime,TClickCount,TLastClickT)</p><p> values('002' ,'02','1001','20&
58、#39;,'+_+','魔獸選哪個(gè)職業(yè)好?','求指導(dǎo)','2011-6-10','4','2011-7-4')</p><p><b> insert</b></p><p> into BBSTopic(tid,TSID,TUID,TReplyCount,TEmot
59、ion,TTopic,TContents ,TTime,TClickCount,TLastClickT)</p><p> values('2014' ,'01','1004','0','+0+','我是打醬油的~','000','2011-1-21','1','
60、;2011-6-11')</p><p><b> 3.1.9回帖</b></p><p><b> insert</b></p><p> into BBSReply(RID,RTID,RSID,RUID,REmotion,RTopic,RContents,RTime,RClickCount)</p&
61、gt;<p> values('2001' ,'001','01','1004','>-=','這樣的','如此如此,這般這般','2011-6-24','1')</p><p><b> insert</b></p&g
62、t;<p> into BBSReply(RID,RTID,RSID,RUID,REmotion,RTopic,RContents,RTime,RClickCount)</p><p> values('2002' ,'002','02','1002','>_<','這樣的','如
63、此如此,這般這般','2011-6-29','1')</p><p><b> insert</b></p><p> into BBSReply(RID,RTID,RSID,RUID,REmotion,RTopic,RContents,RTime,RClickCount)</p><p> val
64、ues('2003' ,'001','01','1005','--','這樣的','如此如此,這般這般','2011-6-27','1')</p><p> 第四章 數(shù)據(jù)管理與維護(hù)</p><p><b> 4.1.單表查詢</
65、b></p><p> 4.1.1查詢用戶表</p><p> select* from BBSUsers</p><p> 4.1.2查詢版塊表</p><p> select* from BBSSection</p><p> 4.1.3查詢主貼表</p><p> sel
66、ect* from BBSTopic</p><p> 4.1.4查詢回帖表</p><p> select* from BBSReply</p><p><b> 4.2規(guī)定查詢</b></p><p> 4.2.1查詢?cè)?注冊(cè)日期距今超過兩年)排名</p><p> select
67、UName as 姓名,UEmail as 電子郵件,URegDate as 注冊(cè)日期</p><p> from BBSUsers </p><p> where datediff(yyyy,URegDate,getdate())>2</p><p> 4.2.3查詢BBSUsers表中UBirthday生日等于今天的用戶</p>&l
68、t;p> update bbsUsers set UBirthday='1980-7-5' where uid=1002(先更新一個(gè)生日日期使能有查詢結(jié)果)</p><p> select UName as 姓名,UBirthday as 出生日期</p><p> from BBSUsers</p><p> where day(ge
69、tdate())=day(UBirthday) and month(getdate())=month(UBirthday)</p><p> 4.2.4按降序顯示所有元老用戶</p><p> select UName as 姓名,Usex as 性別,Upoint as 積分,URegDate as 注冊(cè)日期</p><p> from BBSUsers&l
70、t;/p><p> where datediff(yyyy,URegDate,getdate())>2 </p><p> order by Upoint desc</p><p> 4.2.5查詢所有在線用戶與禁言用戶</p><p> select UName as 姓名,URegDate as 注冊(cè)日期,Ustate as 用
71、戶狀態(tài)</p><p> from BBSUsers</p><p> where UState = 1 or UState = 3</p><p> 4.2.6按回帖時(shí)間的降序顯示所有回帖標(biāo)題與回帖時(shí)間</p><p> select RTopic as 回帖標(biāo)題,RTime as 回帖時(shí)間</p><p>
72、 from BBSreply</p><p> order by RTime desc</p><p> 4.2.7列出BBSTopic表中點(diǎn)擊次數(shù)最高的前5名帖子</p><p> select top 5 TTopic as 主題標(biāo)題,TClickCount as 主貼點(diǎn)擊次數(shù)</p><p> from BBStopic<
73、;/p><p> order by TClickCount desc</p><p> 4.2.8近一周用戶發(fā)帖排名</p><p> 根據(jù)系統(tǒng)日期向前推7天,之內(nèi)的發(fā)帖數(shù)排名前10名</p><p> select top 10 TUID as 用戶ID ,count(*) as 發(fā)帖數(shù)</p><p> fr
74、om bbstopic</p><p> where datediff(dd,TTime,getdate())<=7</p><p> group by tuid</p><p> 4.2.9查詢用戶所發(fā)帖子的最高和最低回帖數(shù) </p><p> select tuid as 用戶ID,max(TReplyCount) 最多
75、回帖數(shù),min(TReplyCount) as 最低回帖數(shù)</p><p> from bbsreply</p><p> group by tuid</p><p> 4.3T-SQL編程</p><p><b> ?、盘嵘e分:</b></p><p> ?、俨槌鲇脩舯碇凶?cè)時(shí)間超過2年
76、的最低積分</p><p> ②如果該積分低于100分,則對(duì)所有低于注冊(cè)時(shí)間超過2年且積分低于198分的用戶積分實(shí)施提升2分操作</p><p> ?、戚敵鎏岱趾笤u(píng)出各等級(jí):</p><p> 1000以上A級(jí);500分以上B級(jí);200分以上C級(jí) ;100分以上D級(jí);100分以下為E級(jí)</p><p><b> begin&l
77、t;/b></p><p><b> --T-SQL編程</b></p><p> declare @minPoint int --定義變量,表示元老最低積分</p><p> --查詢所有元老用戶的最低積分,并賦值給@minPoint</p><p> select @minPoint=min(upoin
78、t) from bbsUsers </p><p> where dateadd(yyyy,2,uregdate)<getdate()</p><p><b> --提分操作</b></p><p> while(@minPoint<100)</p><p><b> begin</
79、b></p><p> update bbsUsers set Upoint=Upoint+2 where dateadd(yyyy,2,uregdate)<getdate() and Upoint<198</p><p> select @minPoint=min(Upoint) from bbsUSers where dateadd(yyyy,2,uregdat
80、e)<getdate()</p><p><b> end</b></p><p> print '元老用戶提分完成,用戶積分的等級(jí)如下:'</p><p> select uid 用戶ID,Uname 用戶名,等級(jí)=case when upoint>1000 then 'A'</p>
81、;<p> when upoint>500 then 'B'</p><p> when upoint>200 then 'C'</p><p> when upoint>100 then 'D'</p><p> else 'E' end</p>
82、<p> from bbsUsers</p><p><b> end </b></p><p> 第五章 個(gè)人小結(jié)與體會(huì)</p><p> 在選擇這個(gè)課程設(shè)計(jì)題目前,看了一下題目要求應(yīng)該蠻簡單的吧,結(jié)果光是寫代碼就遇到很多問題,以前學(xué)過的知識(shí)還是不夠熟練,編不了幾段就要看一下書,比如說怎么限制主鍵約束,設(shè)置默認(rèn)值,各個(gè)實(shí)
83、體之間的聯(lián)系怎么用SQL語言來建立等等。通過不斷的翻書和請(qǐng)教其他做過類似實(shí)驗(yàn)的同學(xué)我算是基本上已經(jīng)可以把幾個(gè)基本的實(shí)體表建立起來了。在插入數(shù)據(jù)的過程中出現(xiàn)無法插入的情況,檢查發(fā)現(xiàn),然來定義屬性變量的時(shí)候給的內(nèi)存空間不夠,修改后正常插入。經(jīng)過兩天的編程我終于還是完成了,有點(diǎn)兒欣慰,也有點(diǎn)兒感觸,我認(rèn)為,不管做什么事兒都應(yīng)該要有自信,不能只會(huì)知難而退,有時(shí)候當(dāng)我們坦然面對(duì)之后,你就會(huì)發(fā)現(xiàn)其實(shí)情況并不是很復(fù)雜。</p><
84、p><b> 源程序代碼:</b></p><p><b> --存在檢測(cè)</b></p><p> use master</p><p><b> go</b></p><p> if exists(select*from sysdatabases where
85、 name ='BBS')</p><p> drop database BBS</p><p><b> go</b></p><p><b> --建庫</b></p><p> create database BBS</p><p> on p
86、rimary</p><p><b> (</b></p><p> name = BBS_data, --邏輯名</p><p> filename ='d:\BBS_data.mdf', --物理文件</p><p> size = 20MB, --初始大小</p><
87、p> filegrowth=10%, --文件增長率</p><p> maxsize = 200MB --初始大小</p><p><b> )</b></p><p><b> log on</b></p><p><b> (</b></p>
88、;<p> name =bbs_log, --邏輯名</p><p> filename ='d:\bbs_data.ldf', --物理文件</p><p> size =10mb, --初始大小</p><p> filegrowth = 10%,--文件增長率</p><p> maxsize
89、= 100MB --最大尺寸</p><p><b> )</b></p><p><b> use BBS</b></p><p><b> go</b></p><p> if exists(select*from sysobjects where name =&
90、#39;BBSUsers')</p><p> drop table BBSUsers</p><p><b> go</b></p><p> create table BBSUsers</p><p><b> (</b></p><p> UID in
91、t constraint pk_UID primary key,--用戶編號(hào)</p><p> UName char(8) not null, --用戶姓名</p><p> UPassword char(16) constraint df_UPassword default '888888',--用戶密碼</p><p> UEmail ch
92、ar(20) not null constraint ck_Uemail check(UEmail like'%@%.%'),--用戶Email</p><p> UBirthday datetime not null,--用戶生日</p><p> Usex int constraint df_Usex default '1', --用戶性別<
93、;/p><p> UClass int constraint df_UClass default '1', --用戶等級(jí)</p><p> UStatement varchar(150)not null, --用戶說明</p><p> URegDate datetime not null default getdate(), --用戶注冊(cè)時(shí)
94、間</p><p> UState tinyint constraint df_UState default '1', --用戶狀態(tài) </p><p> UPoint int constraint df_UPoint default '20' , --用戶積分 </p><p>
95、 constraint ck_UPassword check(UPassword like '______')</p><p><b> )</b></p><p> if exists(select*from sysobjects where name ='BBSTopic')</p><p> dro
96、p table BBSTopic</p><p><b> go</b></p><p> create table BBSTopic</p><p><b> (</b></p><p> TID int constraint pk_tid primary key, --主貼編號(hào)</
97、p><p> TSID int not null, --主貼板塊編號(hào)</p><p> TUID int not null, --主貼用戶編號(hào)</p><p> TReplyCount int not null, --主貼回復(fù)次數(shù)</p><p> TEmotion char(10) not null, --主貼表情</
98、p><p> TTopic varchar(50) not null CONSTRAINT ck_TTopic check(TTopic not like'%''%'), --主貼標(biāo)題</p><p> TContents text not null, --主貼內(nèi)容</p><p> TTime datetime not null
99、default getdate() ,--發(fā)帖時(shí)間</p><p> TClickCount int not null, --主貼點(diǎn)擊次數(shù) </p><p> TLastClickT datetime not null ,</p><p> CONSTRAINT [CK_TLC] CHECK ([TLastClickT]>=TTime) --主貼最后
100、點(diǎn)擊時(shí)間 </p><p><b> )</b></p><p> if exists(select*from sysobjects where name ='BBSSection')</p><p> drop table BBSSection</p><p><b> go</
101、b></p><p> create table BBSSection</p><p><b> (</b></p><p> SID int constraint pk_SID primary key,--版塊編號(hào)</p><p> SName char(20),--版塊名稱 </p>
102、<p> SMasterID int, --版主編號(hào) </p><p> SStatement varchar(100), --版塊說明 </p><p> SClickCount int constraint df_SClickCount default '0', --版塊點(diǎn)擊次數(shù) </p><p> STopicCount
103、int constraint df_STopicCount default '0' --版塊主題數(shù) </p><p><b> )</b></p><p> if exists(select*from sysobjects where name ='BBSReply')</p><p> drop ta
104、ble BBSReply</p><p><b> go</b></p><p> create table BBSReply</p><p><b> (</b></p><p> RID int constraint pk_RID primary key,--回復(fù)編號(hào) </p&g
105、t;<p> RTID int,--回復(fù)帖子編號(hào) </p><p> RSID int,--回復(fù)版塊編號(hào) </p><p> RUID int,--回復(fù)用戶編號(hào) </p><p> REmotion char(10),--回復(fù)表情 </p><p> RTopic varchar(20),--回帖主題&l
106、t;/p><p> RContents text,--回帖內(nèi)容</p><p> RTime datetime default getdate(),--回帖時(shí)間</p><p> RClickCount int,--回帖點(diǎn)擊次數(shù)</p><p><b> )</b></p><p><b
107、> --建立聯(lián)系</b></p><p> alter table BBSTopic</p><p> add constraint fk1_BBSTopic_BBSUsers foreign key(tuid) references BBSUsers(UID) --一個(gè)用戶可以發(fā)表多篇主帖內(nèi)容</p><p> alter table
108、BBSReply</p><p> add constraint fk1_BBSReply_BBSTopic foreign key(RTID) references BBSTopic(TID) --一篇主帖能夠?qū)?yīng)多條回帖</p><p> alter table BBSReply</p><p> add constraint fk1_BBSReply_
109、BBSUsers foreign key(RUID) references BBSUsers(UID) --一個(gè)用戶可以發(fā)表多條回帖內(nèi)容</p><p> alter table BBSTopic</p><p> add constraint fk1_BBSTopic_BBSSection foreign key(TSID) references BBSSection(SID)
110、 --一個(gè)版塊可以包含多篇主帖</p><p> alter table BBSReply</p><p> add constraint fk1_BBSReply_BBSSection foreign key(RSID) references BBSSection(SID) --一個(gè)版塊可以包含多篇回帖</p><p> alter table BBSSe
111、ction</p><p> add constraint fk1_BBSSection_BBSUsers foreign key(SMasterID) references BBSUsers(UID) --一個(gè)用戶可以管理多個(gè)版塊</p><p><b> --注冊(cè)新用戶</b></p><p><b> insert<
112、;/b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState)</p><p> values('1001' ,'無敵游客','159357','auroral@163.com
113、39;,'1991-5-12','1','','瘋子','2010-5-7','2')</p><p><b> insert</b></p><p> into BBSUsers(UId,UName,UPassword,UEmail,UBirthday,USex,UC
114、lass,UStatement,URegDate,UState,UPoint)</p><p> values('1002' ,'熬吧馬','654321','shanhu@yahoo.com.cn','1989-8-30','1','','愛吧','2011-4-7'
115、,'3','25')</p><p><b> insert</b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p> val
116、ues('1003' ,'真?zhèn)五?#39;,'158664','cookie@qq.com.cn','1992-1-3','2','','快樂','2009-5-7','2','103')</p><p><b> insert<
117、/b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p> values('1004' ,'地球字幕','175175','ibook@126.c
118、om.cn','1990-7-4','2','','自我','2008-5-4','2','102')</p><p><b> insert</b></p><p> into BBSUsers(UID,UName,UPassword,UEma
119、il,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</p><p> values('1005' ,'無傷大雅','198755','ipd123@139.com.cn','1988-1-4','1','','和諧',
120、'2000-12-12','1','150')</p><p><b> insert</b></p><p> into BBSUsers(UID,UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint)</
121、p><p> values('1006' ,'回來吧主','192445','zhenmi@sohu.com.cn','1994-12-14','2','','低調(diào)','2000-12-12','1','97')</p><
122、;p><b> --創(chuàng)建版塊</b></p><p><b> insert</b></p><p> into BBSSection(SID,SName,SMasterID,SStatement,STopicCount)</p><p> values('01' ,'灌水區(qū)'
123、,'1006','有什么您就說','5')</p><p><b> insert</b></p><p> into BBSSection(SID,SName,SMasterID,SStatement,SClickCount,STopicCount)</p><p> values(
124、9;02' ,'魔獸貼吧','1005','請(qǐng)不要放水貼!','4','10')</p><p><b> --發(fā)帖</b></p><p><b> insert</b></p><p> into BBSTopic(TID,T
125、SID,TUID,TReplyCount,TEmotion,TTopic,TContents ,TTime,TClickCount,TLastClickT)</p><p> values('2001' ,'01','1005','5','+_~','無聊','無聊來冒個(gè)泡的。。','2011
126、-6-26','5','2011-7-4')</p><p><b> insert</b></p><p> into BBSTopic(TID,TSID,TUID,TReplyCount,TEmotion,TTopic,TContents ,TTime,TClickCount,TLastClickT)</p>
127、<p> values('2002' ,'02','1001','20','+_+','求指導(dǎo)','魔獸選哪個(gè)職業(yè)好?','2011-6-27','4','2011-7-4')</p><p><b> insert</b
128、></p><p> into BBSTopic(TID,TSID,TUID,TReplyCount,TEmotion,TTopic,TContents ,TTime,TClickCount,TLastClickT)</p><p> values('2003' ,'01','1004','1','+_+
129、39;,'000','我是打醬油的~','2011-6-30','1','2011-7-3')</p><p><b> --添加回復(fù)</b></p><p><b> insert</b></p><p> into BBSReply(
130、RID,RTID,RSID,RUID,REmotion,RTopic,RContents,RTime,RClickCount)</p><p> values('3007' ,'2001','01','1004','>-=','跟','繼續(xù)冒泡。。','2011-6-27',
131、39;1')</p><p><b> insert</b></p><p> into BBSReply(RID,RTID,RSID,RUID,REmotion,RTopic,RContents,RTime,RClickCount)</p><p> values('3008' ,'2002',&
132、#39;02','1002','>_<','加','看你的愛好了','2011-6-27','1')</p><p><b> insert</b></p><p> into BBSReply(RID,RTID,RSID,RUID,REmotion
133、,RTopic,RContents,RTime,RClickCount)</p><p> values('3009' ,'2003','01','1005','-_-','如','法師','2011-7-1','1')</p><p><
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設(shè)計(jì)--bbs系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫系統(tǒng)原理
- 數(shù)據(jù)庫原理課程設(shè)計(jì)
- 《數(shù)據(jù)庫原理》課程設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---個(gè)人事物管理數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---教室管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---圖書管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 《數(shù)據(jù)庫原理及應(yīng)用》課程設(shè)計(jì)---師生管理數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)
- 數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)--職工考勤管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---網(wǎng)上拍賣數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--cd唱片數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--學(xué)生課程數(shù)據(jù)庫的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論