醫(yī)院病房_數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告_第1頁(yè)
已閱讀1頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院</p><p>  2010-2011 學(xué)年第 1學(xué)期</p><p>  《 數(shù)據(jù)庫(kù)原理(Ⅲ)》課程設(shè)計(jì)</p><p>  題目: 醫(yī)院病房管理系統(tǒng) </p><p>  班級(jí): </p><p>  

2、學(xué)號(hào): </p><p>  姓名: </p><p>  教師: </p><p>  成績(jī): </p><p><b>  一、需求分

3、析</b></p><p>  近年來(lái),隨著我國(guó)人民生活水平的迅速提高,科學(xué)技術(shù)的進(jìn)一步發(fā)展,人們對(duì)將電子計(jì)算機(jī)應(yīng)用于醫(yī)學(xué)領(lǐng)域的需求就越來(lái)越迫切,一套好的醫(yī)院病房管理系統(tǒng)在全面提高醫(yī)院的整體工作效率、為病人提供方便快捷的服務(wù)等方面都能發(fā)揮出重要作用。根據(jù)調(diào)查,在西方發(fā)達(dá)國(guó)家,幾乎絕大部分的醫(yī)院都已經(jīng)采用了醫(yī)院病房管理系統(tǒng),然而在國(guó)內(nèi)的使用尚不普及,許多小型醫(yī)院還是完全依靠手工操作在管理病人和醫(yī)院?jiǎn)T工的

4、一切信息,這不僅勞動(dòng)強(qiáng)度大且工作效率低,醫(yī)師護(hù)士和管理人員的大量時(shí)間都消耗在事務(wù)性工作上,對(duì)其所掌握的信息也無(wú)法很好地統(tǒng)計(jì)應(yīng)用起來(lái),這樣既無(wú)法提高醫(yī)院自身的醫(yī)療水平,同時(shí)又無(wú)法很好地為病人服務(wù)。</p><p>  信息時(shí)代已經(jīng)來(lái)臨,將計(jì)算機(jī)應(yīng)用于醫(yī)院的日常管理為醫(yī)院的現(xiàn)代化帶來(lái)了從未有過(guò)的動(dòng)力和機(jī)遇,為醫(yī)療衛(wèi)生領(lǐng)域的發(fā)展提供了無(wú)限的潛力。對(duì)于一個(gè)醫(yī)院來(lái)說(shuō),病房管理是一個(gè)必備的環(huán)節(jié),病房的入住、費(fèi)用統(tǒng)計(jì)等都包含著

5、復(fù)雜的信息,這就需要應(yīng)用計(jì)算機(jī)軟件來(lái)對(duì)各項(xiàng)工作進(jìn)行管理以發(fā)揮最大的功效。采用計(jì)算機(jī)管理信息系統(tǒng)已成為醫(yī)院管理科學(xué)化和現(xiàn)代化的標(biāo)志,給醫(yī)院帶來(lái)了明顯的經(jīng)濟(jì)效益和社會(huì)效益,它極大的提高了醫(yī)務(wù)人員的工作效率,有效地解決了信息的管理問(wèn)題。這次設(shè)計(jì)的目的就是為醫(yī)院創(chuàng)建一個(gè)方便、實(shí)用、快捷的管理系統(tǒng), 具備數(shù)據(jù)庫(kù)維護(hù)功能,能根據(jù)用戶(hù)需求進(jìn)行數(shù)據(jù)的查詢(xún)、添加、刪除、修改,減輕醫(yī)院工作人員的負(fù)擔(dān),同時(shí)這也是現(xiàn)代化管理的必然要求。 </p>

6、<p><b>  系統(tǒng)功能模塊圖:</b></p><p>  各模塊所能實(shí)現(xiàn)的功能:</p><p>  登錄界面:醫(yī)生只有輸入正確的工作證號(hào)和密碼才能登錄系統(tǒng),如果還沒(méi)有注冊(cè),可先輸入相關(guān)信息進(jìn)行注冊(cè)。</p><p>  管理主頁(yè):列出了該系統(tǒng)所能實(shí)現(xiàn)的功能,包括病人住院登記、出院結(jié)算、病人信息管理、醫(yī)院內(nèi)部信息管理、系統(tǒng)安

7、全密碼設(shè)置,醫(yī)生根據(jù)需要選擇對(duì)應(yīng)的項(xiàng)目。</p><p>  住院登記:登記病人基本信息,包括病歷號(hào)、姓名、性別、診斷、病房號(hào)、床位號(hào)、電話(huà)號(hào)碼、主治醫(yī)生、住院日期,將其提交給系統(tǒng)。</p><p>  出院結(jié)算:根據(jù)病人的入院日期、出院日期、和所住病房的收費(fèi)標(biāo)準(zhǔn),便可計(jì)算出病人所需支付的費(fèi)用。</p><p>  病人信息管理:可以查看全部病人信息,而且能選擇科室

8、進(jìn)行分科室查看病人信息,還可以通過(guò)輸入病人病歷號(hào)、選擇想要修改的項(xiàng)目來(lái)修改病人信息。</p><p>  醫(yī)院內(nèi)部信息管理:包括科室信息管理、醫(yī)生信息管理、病房信息管理、床位信息管理。其中科室信息管理實(shí)現(xiàn)添加科室、刪除科室、更新科室、查看全部科室、查看科室醫(yī)生;醫(yī)生信息管理用來(lái)添加醫(yī)生、刪除醫(yī)生、更新醫(yī)生、查看所有醫(yī)生、查看醫(yī)生主管病人;病房信息管理實(shí)現(xiàn)添加病房、刪除病房、更新病房以及查看全部病房;床位信息管理用

9、來(lái)添加床位、刪除床位、還可以查詢(xún)床位的使用情況以便合理地為病人分配床位。</p><p>  系統(tǒng)安全密碼設(shè)置:為了保證系統(tǒng)的安全性,系統(tǒng)通過(guò)對(duì)工作證號(hào)和舊密碼的驗(yàn)證,來(lái)修改登錄密碼。</p><p>  病房管理系統(tǒng)數(shù)據(jù)流圖: </p><p><b>  數(shù)據(jù)字典:</b></p><p>  (1) 數(shù)據(jù)結(jié)構(gòu):病人

10、</p><p>  含義說(shuō)明:定義了一個(gè)病人的信息結(jié)構(gòu)</p><p>  組成:病歷號(hào)、姓名、性別、診斷、病房號(hào)、床位號(hào)、電話(huà)號(hào)碼、主治醫(yī)生、住院日期</p><p>  (2) 數(shù)據(jù)結(jié)構(gòu):醫(yī)生</p><p>  含義說(shuō)明:定義了一個(gè)醫(yī)生的信息結(jié)構(gòu)</p><p>  組成:工作證號(hào),姓名,年齡,職稱(chēng),部門(mén),電話(huà)

11、號(hào)碼,密碼</p><p>  (3) 數(shù)據(jù)項(xiàng):病歷號(hào)</p><p>  含義說(shuō)明:唯一標(biāo)識(shí)一個(gè)病人</p><p><b>  類(lèi)型:字符型</b></p><p><b>  長(zhǎng)度:4</b></p><p>  取值范圍0000~9999</p>&l

12、t;p>  (4) 數(shù)據(jù)項(xiàng):工作證號(hào)</p><p>  含義說(shuō)明:唯一標(biāo)識(shí)一個(gè)醫(yī)生</p><p><b>  類(lèi)型:字符型</b></p><p><b>  長(zhǎng)度:3</b></p><p>  取值范圍000~999</p><p>  (5) 數(shù)據(jù)項(xiàng):密碼&

13、lt;/p><p>  含義說(shuō)明:登陸本病房管理系統(tǒng)時(shí)所需的密碼</p><p><b>  類(lèi)型:可變字符型</b></p><p><b>  長(zhǎng)度:15</b></p><p>  (6) 數(shù)據(jù)流:病房和床位信息</p><p>  說(shuō)明:表示病房?jī)?nèi)每一床位的使用狀態(tài)<

14、;/p><p>  數(shù)據(jù)來(lái)源:病房表和床位表</p><p>  組成:所屬科室,病房號(hào),床位號(hào),目前狀態(tài),收費(fèi)標(biāo)準(zhǔn)</p><p>  (7) 數(shù)據(jù)流:醫(yī)生主管病人信息</p><p>  說(shuō)明:表示每一醫(yī)生主治的病人信息</p><p>  數(shù)據(jù)來(lái)源:病人表和醫(yī)生表</p><p>  組成:病

15、歷號(hào),姓名,性別,病房號(hào),床位號(hào),電話(huà)號(hào)碼,醫(yī)生工作證號(hào),醫(yī)生姓名</p><p>  (8) 數(shù)據(jù)流:科室醫(yī)生信息</p><p>  說(shuō)明:表示每一科室包含的醫(yī)生信息</p><p>  數(shù)據(jù)來(lái)源:科室表和醫(yī)生表 </p><p>  組成:工作證號(hào), 姓名, 職稱(chēng), 年齡, 電話(huà)號(hào)碼, 科名, 科地址, 科電話(huà)</p>&

16、lt;p>  (9) 處理過(guò)程: 登記病人信息</p><p>  說(shuō)明:向系統(tǒng)錄入病人信息</p><p>  輸入:病歷號(hào)、姓名、性別、診斷、病房號(hào)、床位號(hào)、電話(huà)號(hào)碼、主治醫(yī)生、住院日期</p><p>  處理:首先根據(jù)病人診斷的結(jié)果,從病房和床位信息中選擇一個(gè)空的床位,然后將病人相關(guān)信息輸入系統(tǒng)。</p><p>  (10)處

17、理過(guò)程: 出院結(jié)算</p><p>  說(shuō)明:結(jié)算病人住院期間所需費(fèi)用 </p><p>  輸入:病歷號(hào)、出院日期</p><p>  輸出:姓名、病房號(hào)、收費(fèi)標(biāo)準(zhǔn)、住院日期、應(yīng)付金額</p><p>  處理:根據(jù)病人的病歷號(hào),從數(shù)據(jù)庫(kù)中得到相應(yīng)的住院信息,由出院日期和收費(fèi)標(biāo)準(zhǔn)系統(tǒng)可返回應(yīng)支付的費(fèi)用。 </p><p&

18、gt;<b>  二、結(jié)構(gòu)設(shè)計(jì)</b></p><p><b>  1.概念結(jié)構(gòu)設(shè)計(jì)</b></p><p><b>  全局E-R圖:</b></p><p><b>  2.邏輯結(jié)構(gòu)設(shè)計(jì)</b></p><p>  將E-R圖轉(zhuǎn)換為關(guān)系模式為:<

19、/p><p>  病人(病歷號(hào),姓名,性別,診斷,病房號(hào),床位號(hào),電話(huà)號(hào)碼,主治醫(yī)生,住院日期)</p><p>  醫(yī)生(工作證號(hào),姓名,年齡,職稱(chēng),部門(mén),電話(huà)號(hào)碼,密碼)</p><p>  科室(科名,科電話(huà),科地址)</p><p>  病房(病房號(hào),所屬科室,收費(fèi)標(biāo)準(zhǔn))</p><p>  病床(病房號(hào),病床號(hào),

20、目前狀態(tài))</p><p>  治療(病歷號(hào),工作證號(hào))</p><p>  屬于(工作證號(hào),科名)</p><p>  包含(科名,病房號(hào))</p><p>  入?。úv號(hào),病房號(hào))</p><p>  擁有(病房號(hào),病床號(hào))</p><p><b>  關(guān)系圖如下所示:</

21、b></p><p><b>  3.物理結(jié)構(gòu)設(shè)計(jì)</b></p><p><b>  1) 對(duì)于醫(yī)生表:</b></p><p>  系統(tǒng)涉及了對(duì)工作證號(hào)、姓名、職稱(chēng)、部門(mén)的查詢(xún),因此為其各建立一個(gè)升序的索引。</p><p><b>  2) 對(duì)于病人表:</b>&l

22、t;/p><p>  系統(tǒng)涉及了對(duì)病歷號(hào)、診斷、病房號(hào)、主治醫(yī)生工作號(hào)的查詢(xún),因此為其各建立一個(gè)升序的索引。</p><p><b>  3) 對(duì)于病房表:</b></p><p>  系統(tǒng)涉及到了對(duì)病房號(hào)、所屬科室的查詢(xún),因此為其各建立一個(gè)升序的索引。</p><p><b>  4) 對(duì)于病床表:</b&

23、gt;</p><p>  系統(tǒng)涉及到了對(duì)病房號(hào)、床位號(hào)的查詢(xún),因此為其各建立一個(gè)升序的索引。</p><p>  三、主要編碼及描述:</p><p><b>  1.數(shù)據(jù)庫(kù)服務(wù)器端</b></p><p><b>  1)視圖一:</b></p><p>  CREATE

24、 VIEW 醫(yī)生視圖</p><p><b>  AS</b></p><p>  SELECT 工作證號(hào), 姓名, 職稱(chēng), 年齡, 電話(huà)號(hào)碼, 部門(mén)</p><p><b>  FROM 醫(yī)生</b></p><p>  作用:醫(yī)生表中有一列屬性是密碼,當(dāng)查詢(xún)醫(yī)生信息時(shí),不應(yīng)顯示出來(lái),所以查詢(xún)時(shí)可

25、以直接查詢(xún)?cè)撘晥D,輸出除密碼以外的信息。</p><p><b>  視圖二:</b></p><p>  CREATE VIEW 醫(yī)生主管病人視圖</p><p><b>  AS</b></p><p>  SELECT 病人.病歷號(hào),病人.姓名 AS 病人姓名,病人.性別, 病人.病房號(hào),&

26、lt;/p><p>  病人.病床號(hào),病人.電話(huà)號(hào)碼,醫(yī)生.姓名 AS 醫(yī)生姓名, 醫(yī)生.工作證號(hào)</p><p>  FROM 病人,醫(yī)生 </p><p>  WHERE病人.主治醫(yī)生工作號(hào) =醫(yī)生.工作證號(hào)</p><p>  ORDER BY醫(yī)生.工作證號(hào),病人.病歷號(hào)</p><p>  作用:該視圖將醫(yī)生表和病

27、人表聯(lián)系起來(lái),當(dāng)輸入醫(yī)生的工作證號(hào)后,可直接調(diào)用該視圖,將相關(guān)的醫(yī)生信息和病人信息以醫(yī)生工作證號(hào)為第一順序、病人病歷號(hào)為第二順序輸出。</p><p><b>  視圖三:</b></p><p>  CREATE VIEW 科室醫(yī)生信息情況</p><p><b>  AS</b></p><p>

28、;  SELECT醫(yī)生.工作證號(hào),醫(yī)生.姓名, 醫(yī)生.職稱(chēng), 醫(yī)生.年齡, 醫(yī)生.電話(huà)號(hào)碼, 科室.科名,科室.科地址,科室.科電話(huà)</p><p>  FROM醫(yī)生,科室 </p><p>  WHERE 醫(yī)生.部門(mén) = 科室.科名</p><p>  ORDER BY醫(yī)生.工作證號(hào)</p><p>  作用:該視圖將科室表和醫(yī)生表聯(lián)系起來(lái)

29、,當(dāng)選擇科室名稱(chēng)后,可直接調(diào)用該視圖,將相關(guān)的科室信息和醫(yī)生信息按醫(yī)生工作證號(hào)的順序輸出。</p><p><b>  視圖四:</b></p><p>  CREATE VIEW 出院結(jié)算視圖</p><p><b>  AS</b></p><p>  SELECT 病人.病歷號(hào), 病人.姓名,

30、 病人.性別, 病人.診斷, 病人.住院日期, </p><p>  病人.病房號(hào), 病房.收費(fèi)標(biāo)準(zhǔn)</p><p>  FROM 病人,病房 </p><p>  WHERE病人.病房號(hào) = 病房.病房號(hào)</p><p>  ORDER BY 病人.病歷號(hào)</p><p>  作用:當(dāng)病人出院時(shí)結(jié)算費(fèi)用,需要知道住院

31、日期、病房號(hào)及收費(fèi)標(biāo)準(zhǔn)以便進(jìn)一步的計(jì)算。該視圖將病人表和病房表聯(lián)系起來(lái),輸入病人病歷號(hào)后,即可顯示出住院日期、收費(fèi)標(biāo)準(zhǔn)等相關(guān)信息。</p><p><b>  2)存儲(chǔ)過(guò)程:</b></p><p>  CREATE PROCEDURE chuyuan(@id char(20),@tm datetime,@pp int output) AS</p>&l

32、t;p>  declare @a int</p><p>  declare @b int</p><p>  declare @c datetime</p><p>  select @a=病房號(hào) from 病人 where 病歷號(hào)=@id</p><p>  select @b=收費(fèi)標(biāo)準(zhǔn) from 病房 where 病房號(hào)=@a&l

33、t;/p><p>  select @c=住院日期 from 病人 where 病歷號(hào)=@id</p><p>  select @a=datediff(day,@c,@tm)</p><p>  set @pp=@a*@b</p><p><b>  GO</b></p><p>  作用:該存儲(chǔ)過(guò)

34、程將病人病歷號(hào)和出院日期作為輸入,分別賦值給變量id、tm,經(jīng)select語(yǔ)句得到收費(fèi)標(biāo)準(zhǔn)賦給變量b、和住院日期賦給變量c,用函數(shù)datediff(day,@c,@tm)</p><p>  計(jì)算出住院天數(shù),住院天數(shù)和收費(fèi)標(biāo)準(zhǔn)的乘積即為結(jié)算費(fèi)用,將它賦給變量pp并作為輸出返回。</p><p><b>  3)觸發(fā)器一:</b></p><p>

35、;  create TRIGGER up ON病人 </p><p>  FOR INSERT</p><p><b>  AS</b></p><p><b>  Begin</b></p><p>  Declare @NR varchar(50), @NB varchar(50)</p&

36、gt;<p>  Select @NR=病房號(hào),@NB=病床號(hào) from inserted</p><p><b>  Update 病床</b></p><p>  Set 目前狀態(tài)="有人"</p><p>  Where 病房號(hào)=@NR and 床位號(hào)=@NB</p><p>&l

37、t;b>  End</b></p><p>  作用:當(dāng)有新病人登記入住時(shí)觸發(fā)事件,設(shè)置病人所在床位的目前狀態(tài)為“有人”,以免再有病人入住此床位時(shí)發(fā)生沖突。</p><p><b>  觸發(fā)器二:</b></p><p>  create TRIGGER de ON病人 </p><p>  FOR d

38、elete</p><p><b>  AS</b></p><p><b>  Begin</b></p><p>  Declare @NR varchar(50), @NB varchar(50)</p><p>  Select @NR=病房號(hào),@NB=病床號(hào) from deleted<

39、;/p><p><b>  Update 病床</b></p><p>  Set 目前狀態(tài)="無(wú)人"</p><p>  Where 病房號(hào)=@NR and 床位號(hào)=@NB</p><p><b>  End</b></p><p>  作用:當(dāng)有病人出院時(shí)

40、將其信息刪除,觸發(fā)該事件,設(shè)置病人之前床位的目前狀態(tài)為“無(wú)人”,以便以后其他病人可以使用此床位。</p><p><b>  2.應(yīng)用服務(wù)器端</b></p><p>  1)數(shù)據(jù)錄入功能:通過(guò)“住院登記”界面,將錄入的病人相關(guān)信息存儲(chǔ)到數(shù)據(jù)庫(kù)病人表中;</p><p>  protected void Button1_Click(object

41、 sender, EventArgs e)</p><p><b>  {</b></p><p>  SqlConnection SunCon = new SqlConnection("Data Source=localhost;Initial Catalog=病房管理系統(tǒng);Integrated Security=True");</p>

42、;<p>  SunCon.Open(); //打開(kāi)SunCon對(duì)象所連接的數(shù)據(jù)庫(kù)</p><p>  string StuSQL; //用來(lái)存放SQL命令的字符串</p><p>  StuSQL = "INSERT INTO 病人(病歷號(hào),姓名,性別,診斷,病房號(hào),電話(huà)號(hào)碼,主治醫(yī)生工作號(hào),住院日期,病床號(hào)) VALUES('";<

43、;/p><p>  StuSQL = StuSQL + TextBox1.Text + "','" + TextBox2.Text + "','" +TextBox10 .Text + "','";</p><p>  StuSQL = StuSQL + TextBox4.Text +

44、"','" + TextBox5.Text + "','" + TextBox6.Text + "','" + TextBox7.Text + "','" + TextBox8.Text + "','" + TextBox9.Text + "'

45、;)";</p><p>  SqlCommand StuIns = new SqlCommand(StuSQL, SunCon); </p><p>  StuIns.ExecuteNonQuery(); //針對(duì)SunCon所連接的數(shù)據(jù)庫(kù),執(zhí)行StuIns對(duì)象 SunCon.Close(); //關(guān)閉SunCon對(duì)象所

46、連接的數(shù)據(jù)庫(kù) </p><p>  Response.Write("<script laguage=javacript>alert('已登記')</script>");</p><p><b>  }</b></p><p>  2)數(shù)據(jù)刪除功能:通過(guò)“刪除醫(yī)生信息”界面,實(shí)現(xiàn)將數(shù)據(jù)庫(kù)

47、中醫(yī)生表中的相應(yīng)醫(yī)生信息進(jìn)行刪除;</p><p>  protected void Button1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  SqlConnection SunCon = new SqlConnection("Data Source

48、=localhost;Initial Catalog=病房管理系統(tǒng);Integrated Security=True");</p><p>  SunCon.Open();</p><p>  string StuSQL;</p><p>  StuSQL = "delete from 醫(yī)生 where 工作證號(hào)="+TextBox1.

49、Text .Trim ();</p><p>  SqlCommand cmd = new SqlCommand(StuSQL, SunCon);</p><p>  cmd.ExecuteNonQuery();</p><p>  Response.Write("<script laguage=javacript>alert('成功刪

50、除')</script>");</p><p><b>  }</b></p><p>  3)數(shù)據(jù)檢索功能:通過(guò)“查看科室病人信息”界面,實(shí)現(xiàn)根據(jù)DropDownList中選擇的科室名稱(chēng)對(duì)數(shù)據(jù)庫(kù)中的病人表進(jìn)行查詢(xún),并將查詢(xún)結(jié)果顯示給用戶(hù)。</p><p>  protected void Page_Load(ob

51、ject sender, EventArgs e)</p><p><b>  {</b></p><p>  SqlConnection SunCon = new SqlConnection("Data Source=localhost;Initial Catalog=病房管理系統(tǒng);Integrated Security=True");</

52、p><p>  if (!IsPostBack) //網(wǎng)頁(yè)第一次加載時(shí)</p><p><b>  {</b></p><p>  SunCon.Open();</p><p>  string StuSQL;</p><p>  StuSQL = "SELECT 科名 FROM 科室&qu

53、ot;;</p><p>  SqlDataAdapter SunAda = new SqlDataAdapter(StuSQL, SunCon);</p><p>  DataSet SunSet = new DataSet();</p><p>  SunAda.Fill(SunSet, "科名");</p><p>

54、  DropDownList1.DataSource = SunSet;</p><p>  DropDownList1.DataMember = "科名";</p><p>  DropDownList1.DataTextField = "科名";</p><p>  DropDownList1.DataBind();<

55、;/p><p>  string StuSQL2;</p><p>  StuSQL2= "SELECT 病歷號(hào),姓名,性別,病房號(hào),病床號(hào),主治醫(yī)生工作號(hào),住院日期,電話(huà)號(hào)碼 FROM 病人 where 診斷 =" + "'" + DropDownList1.SelectedValue.ToString() + "'"

56、;;</p><p>  SqlCommand StuIns = new SqlCommand(StuSQL2, SunCon);</p><p>  SqlDataReader SunDa = StuIns.ExecuteReader();</p><p>  //使用ExecuteReader方法執(zhí)行SQL命令,并將結(jié)果存儲(chǔ)在SunDa對(duì)象中</p>

57、<p>  GridView1.DataSource = SunDa;</p><p>  GridView1.DataBind();</p><p>  SunCon.Close();</p><p><b>  }</b></p><p><b>  }</b></p>

58、<p>  protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)</p><p><b>  { </b></p><p>  SqlConnection SunCon = new SqlConnection("Data Source=loc

59、alhost;Initial Catalog=病房管理系統(tǒng);Integrated Security=True");</p><p>  SunCon.Open();</p><p>  string StuSQL3;</p><p>  StuSQL3 = "SELECT 病歷號(hào),姓名,性別,病房號(hào),病床號(hào),主治醫(yī)生工作號(hào),住院日期,電話(huà)號(hào)碼 F

60、ROM 病人 where 診斷 =" + "'" + DropDownList1.SelectedValue.ToString() + "'";</p><p>  SqlCommand StuIns = new SqlCommand(StuSQL3, SunCon);</p><p>  SqlDataReader Sun

61、Da = StuIns.ExecuteReader();</p><p>  //使用ExecuteReader方法執(zhí)行SQL命令,并將結(jié)果存儲(chǔ)在SunDa對(duì)象中</p><p>  GridView1.DataSource = SunDa;</p><p>  GridView1.DataBind();</p><p>  SunCon.C

62、lose();</p><p><b>  }</b></p><p>  4)數(shù)據(jù)修改功能:通過(guò)“更新醫(yī)生信息”界面,選擇想要的修改項(xiàng),實(shí)現(xiàn)修改數(shù)據(jù)庫(kù)中醫(yī)生表的相關(guān)項(xiàng)為設(shè)置的新值。</p><p>  protected void Button2_Click(object sender, EventArgs e)</p><

63、;p><b>  {</b></p><p>  SqlConnection SunCon = new SqlConnection("Data Source=localhost;Initial Catalog=病房管理系統(tǒng);Integrated Security=True");</p><p>  SunCon.Open(); //打開(kāi)S

64、unCon對(duì)象所連接的數(shù)據(jù)庫(kù)</p><p>  string StuSQL; //用來(lái)存放SQL命令的字符串</p><p>  StuSQL = " UPDATE 醫(yī)生 set 職稱(chēng)='" + TextBox3.Text + "' where 工作證號(hào)='" + TextBox1.Text+"'&qu

65、ot;;</p><p>  SqlCommand upd = new SqlCommand(StuSQL, SunCon);</p><p>  upd.ExecuteNonQuery(); </p><p>  SunCon.Close(); //關(guān)閉SunCon對(duì)象所連接的數(shù)據(jù)庫(kù) </p><p><b>  }<

66、/b></p><p>  protected void Button3_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  SqlConnection SunCon = new SqlConnection("Data Source=localhost;

67、Initial Catalog=病房管理系統(tǒng);Integrated Security=True");</p><p>  SunCon.Open(); //打開(kāi)SunCon對(duì)象所連接的數(shù)據(jù)庫(kù)</p><p>  string StuSQL; //用來(lái)存放SQL命令的字符串</p><p>  StuSQL = " UPDATE 醫(yī)生 se

68、t 年齡='" + TextBox4.Text + "' where 工作證號(hào)='" + TextBox1.Text +"'";</p><p>  SqlCommand upd = new SqlCommand(StuSQL, SunCon); </p><p

69、>  upd.ExecuteNonQuery(); //針對(duì)SunCon所連接的數(shù)據(jù)庫(kù),執(zhí)行upd對(duì)象所包含的名為StuSQL的SQL命令</p><p>  SunCon.Close(); //關(guān)閉SunCon對(duì)象所連接的數(shù)據(jù)庫(kù) </p><p><b>  }</b></p><p>  protected void Butto

70、n4_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  SqlConnection SunCon = new SqlConnection("Data Source=localhost;Initial Catalog=病房管理系統(tǒng);Integrated Security=True&q

71、uot;);</p><p>  SunCon.Open(); //打開(kāi)SunCon對(duì)象所連接的數(shù)據(jù)庫(kù)</p><p>  string StuSQL; //用來(lái)存放SQL命令的字符串</p><p>  StuSQL = " UPDATE 醫(yī)生 set 電話(huà)號(hào)碼='" + TextBox5.Text + "'

72、where 工作證號(hào)='" + TextBox1.Text +"'";</p><p>  SqlCommand upd = new SqlCommand(StuSQL, SunCon); </p><p>  upd.ExecuteNonQuery(); </p><p>  SunC

73、on.Close(); //關(guān)閉SunCon對(duì)象所連接的數(shù)據(jù)庫(kù) </p><p><b>  }</b></p><p>  四、運(yùn)行說(shuō)明:主要界面展示</p><p><b>  床位管理</b></p><p>  說(shuō)明:該界面用于管理病房的床位信息。先選擇科室,再?gòu)脑摽剖宜牟》恐羞x擇一

74、個(gè),便可實(shí)現(xiàn)查詢(xún)此病房中各床位的目前狀態(tài),以供病人登記時(shí)參考,還可實(shí)現(xiàn)向此病房中添加床位或刪除已有床位。</p><p><b>  住院登記</b></p><p>  說(shuō)明:該界面用于病人住院時(shí)登記相關(guān)信息。確定要入住的病房和床位后按要求輸入病人的相關(guān)信息,其中一些數(shù)據(jù)項(xiàng)含有一定的約束條件,將其提交給系統(tǒng),供醫(yī)生查詢(xún)其所需信息以及出院時(shí)查詢(xún)住院情況。</p&

75、gt;<p><b>  修改病人信息</b></p><p>  說(shuō)明:該界面用于修改病人信息。輸入病人的病歷號(hào),然后從下拉列表中選擇要修改的數(shù)據(jù)項(xiàng),相應(yīng)的那一部分就會(huì)變?yōu)榭梢?jiàn),向其中輸入新內(nèi)容后,點(diǎn)擊修改按鈕,即可實(shí)現(xiàn)修改后臺(tái)數(shù)據(jù)庫(kù)病人的相關(guān)信息。</p><p><b>  出院結(jié)算</b></p><p&

76、gt;  說(shuō)明:該界面用于病人出院結(jié)算費(fèi)用。輸入病人的病歷號(hào)后,可將其住院信息顯示出來(lái)。再輸入出院日期,系統(tǒng)會(huì)調(diào)用存儲(chǔ)過(guò)程計(jì)算出住院天數(shù)和收費(fèi)標(biāo)準(zhǔn)的乘積即結(jié)算費(fèi)用。</p><p>  病人支付費(fèi)用后,可將其信息從系統(tǒng)刪除,所住床位的狀態(tài)自動(dòng)變?yōu)闊o(wú)人。</p><p><b>  五、課程設(shè)計(jì)總結(jié)</b></p><p>  在本次數(shù)據(jù)庫(kù)課程設(shè)

77、計(jì)中,我設(shè)計(jì)和開(kāi)發(fā)了一個(gè)小型的病房管理系統(tǒng),實(shí)現(xiàn)了對(duì)病人的住院登記、住院結(jié)算、信息查詢(xún)、信息修改,對(duì)科室信息、醫(yī)生信息、病房信息、床位信息的增、刪、查、改,和系統(tǒng)安全密碼設(shè)置的功能。設(shè)計(jì)過(guò)程中曾經(jīng)遇到了不少難點(diǎn)和問(wèn)題,如:將界面和后臺(tái)數(shù)據(jù)庫(kù)聯(lián)系起來(lái)時(shí)出錯(cuò);對(duì)數(shù)據(jù)庫(kù)中信息操作時(shí)有時(shí)忽略了參照完整性;病人出院結(jié)算時(shí)輸入相關(guān)信息調(diào)用存儲(chǔ)過(guò)程, 然后將結(jié)算費(fèi)用賦給變量并作為輸出返回,該過(guò)程在數(shù)據(jù)庫(kù)的查詢(xún)分析器中可以實(shí)現(xiàn),但在程序中卻不能正常運(yùn)行

78、;頁(yè)面間參數(shù)傳遞實(shí)現(xiàn)不了;還出現(xiàn)了一些語(yǔ)法錯(cuò)誤,和對(duì)一些控件的屬性及事件不熟悉等。對(duì)于上述這些難點(diǎn),我花了很多時(shí)間去解決,反復(fù)看老師所給的事件代碼、將每一條語(yǔ)句都理解透徹,查閱數(shù)據(jù)庫(kù)教材和理論課的課件、并借來(lái)相關(guān)書(shū)籍輔助學(xué)習(xí),注意數(shù)據(jù)庫(kù)中各個(gè)所建表的主外鍵約束, </p><p>  仔細(xì)耐心檢查才能發(fā)現(xiàn)一些不明顯的語(yǔ)法錯(cuò)誤,上網(wǎng)搜索也讓我學(xué)到很多知識(shí),還有些問(wèn)題是請(qǐng)教老師的指導(dǎo)和同學(xué)之間的互相討論,最終將難點(diǎn)一

79、一克服。</p><p>  為了能夠使該設(shè)計(jì)盡可能完善,我看了不少課外資料,主要是想了解一下數(shù)據(jù)庫(kù)管理系統(tǒng)是如何開(kāi)發(fā)的,我從中學(xué)到了許多有關(guān)數(shù)據(jù)庫(kù)方面和軟件開(kāi)發(fā)的知識(shí),對(duì)軟件工程和軟件開(kāi)發(fā)有了進(jìn)一步的了解,知道了開(kāi)發(fā)一個(gè)系統(tǒng)的基本步驟和方法:要先做需求分析,如果需求分析做的不到位,就會(huì)導(dǎo)致具體實(shí)現(xiàn)時(shí)出現(xiàn)很多不合理之處;然后設(shè)計(jì)相應(yīng)的數(shù)據(jù)庫(kù),要注意數(shù)據(jù)庫(kù)的實(shí)體完整性、參照完整、用戶(hù)定義的完整性才能使系統(tǒng)正常工作,

80、設(shè)計(jì)各表要規(guī)范減少冗余,建立適當(dāng)?shù)乃饕痛鎯?chǔ)過(guò)程對(duì)提高系統(tǒng)運(yùn)行的效率是很有必要的;最后就是具體編寫(xiě)代碼實(shí)現(xiàn)相關(guān)功能,將前臺(tái)操作與后臺(tái)數(shù)據(jù)庫(kù)聯(lián)系起來(lái),完成整個(gè)系統(tǒng)的開(kāi)發(fā)。</p><p>  我知道,要想真正深入透徹的做好病房管理系統(tǒng),應(yīng)該先去了解整個(gè)醫(yī)院的信息管理機(jī)制,才能更好的理解醫(yī)院病房管理系統(tǒng)是如何實(shí)現(xiàn)病房管理、如何與其他軟件系統(tǒng)交互的,由于我所學(xué)知識(shí)和時(shí)間有限,這方面我做的不足。還有一點(diǎn)就是雖然我設(shè)計(jì)的系

81、統(tǒng)能正確的執(zhí)行各種功能,但容錯(cuò)方面不夠完善,出錯(cuò)時(shí)有些頁(yè)面沒(méi)有相應(yīng)的提示信息,還應(yīng)進(jìn)一步的改進(jìn),</p><p>  應(yīng)編寫(xiě)代碼使得當(dāng)操作出現(xiàn)失誤時(shí),系統(tǒng)返回提示信息給用戶(hù)并能繼續(xù)正常運(yùn)行,一個(gè)真正實(shí)用的系統(tǒng)都應(yīng)具有良好的容錯(cuò)能力。</p><p>  整體上說(shuō),這學(xué)期的數(shù)據(jù)庫(kù)這門(mén)課程并不難理解,理論知識(shí)學(xué)起來(lái)比較容易,但之前對(duì)它的功能及作用如何實(shí)現(xiàn)缺乏實(shí)踐。本次課程設(shè)計(jì)就給了我很好的機(jī)會(huì)

82、,讓我將書(shū)本知識(shí)運(yùn)用于實(shí)際當(dāng)中,提高了我思考和解決問(wèn)題的能力,鞏固了這個(gè)學(xué)期所學(xué)的課本知識(shí),使我對(duì)一個(gè)完整的數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程有了充分的理解,并鍛煉了做軟件需求分析以及將要求的功能模塊化設(shè)計(jì)的能力,編寫(xiě)程序也培養(yǎng)了我邏輯思維能力的嚴(yán)密性。通過(guò)課程設(shè)計(jì),我體會(huì)到要學(xué)一門(mén)知識(shí)就應(yīng)該將它學(xué)好,但不只是單純的學(xué)習(xí)課本知識(shí),要學(xué)到精髓之處并學(xué)以致用,學(xué)到的并不代表我們掌握了,只有在實(shí)踐的過(guò)程中才能對(duì)這些知識(shí)真正透徹、牢固的掌握。 </p>

83、;<p>  總之,在此次課程設(shè)計(jì)中我很有收獲,學(xué)到了不少專(zhuān)業(yè)知識(shí),是對(duì)自己自身專(zhuān)業(yè)素質(zhì)的一種提高,而且增強(qiáng)了我在專(zhuān)業(yè)設(shè)計(jì)和專(zhuān)業(yè)知識(shí)方面的信心,只要認(rèn)學(xué)肯下功夫、有耐心、有恒心,就一定可以將事情做好。我還懂得了如何將學(xué)到的知識(shí)運(yùn)用到實(shí)際中去,不僅讓我對(duì)數(shù)據(jù)庫(kù)這門(mén)課程更好的掌握,也是對(duì)鍛煉我解決問(wèn)題能力的一個(gè)考驗(yàn),同時(shí)我發(fā)現(xiàn)并彌補(bǔ)了自己的某些知識(shí)方面的缺陷和不足。在今后,我還會(huì)繼續(xù)努力,有信心去迎接挑戰(zhàn),在不斷的求索與學(xué)習(xí)中

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論