醫院病房信息管理系統
編制
精選 管理方案 審核
批準
生效日期
地址:
電話:
傳真:
郵編:
目錄
第一章 需求分析 .............................................. 錯誤! 未指定書簽。
醫院管理系統模塊圖 ...................................... 錯誤! 未指定書簽。
醫院管理系統流程圖 ...................................... 錯誤! 未指定書簽。
第二章 概念結構設計 .......................................... 錯誤! 未指定書簽。
醫生實體子 E-R 圖 ........................................ 錯誤! 未指定書簽。
病人實體子 E-R 圖 ........................................ 錯誤! 未指定書簽。
科室實體子 E-R 圖 ........................................ 錯誤! 未指定書簽。
病房實體子 E-R 圖 ........................................ 錯誤! 未指定書簽。
全局 E-R 圖 ............................................... 錯誤! 未指定書簽。
第三章 邏輯結構設計 .......................................... 錯誤! 未指定書簽。
第四章
物理實現 ............................................. 錯誤! 未定義書簽。
數據庫的創建 .......................................... 錯誤! 未指定書簽。
表對象的創建與操作 ...................................... 錯誤! 未指定書簽。
醫生表 doctor 創建與操作 ............................. 錯誤! 未指定書簽。
病人表 patient 創建與操作 ............................. 錯誤! 未指定書簽。
科室表 office 創建與操作 .............................. 錯誤! 未指定書簽。
醫院病房管理系統數據表之間的關系圖 ................... 錯誤! 未定義書簽。
視 圖 .................................................. 錯誤! 未指定書簽。
表的 T-SQL 語句 ........................................... 錯誤! 未指定書簽。
聚合函數——分類聚合 .................................... 錯誤! 未指定書簽。
存儲過程 ............................................... 錯誤! 未指定書簽。
觸發器 .................................................. 錯誤! 未指定書簽。
第五章 總結 .................................................. 錯誤! 未指定書簽。
致謝 ......................................................... 錯誤! 未指定書簽。
參考文獻 ..................................................... 錯誤! 未指定書簽。
第一章
需求分析 醫院信息管理系統就是對醫院的醫生、病人、等信息的管理。為了方便當今我國的醫療體制正在進行改革,需要醫療市場的進一步規范化,這就利用現代化的工具對醫院進行有效的管理,有利于提高醫療水平和服務質量,更好的服務于社會。
所以我們利用 SQL server 2000 技術設計了此醫院管理數據庫系統,以利用計算機完成病人入院后,對其基本信息、主治醫師以及入住病房等信息進行數據庫管理,有利于提高入院手續的辦理速度以及對醫院資源管理的效率。
醫院管理系統模塊圖
用戶登錄后,進入總的模板控制塊,然后根據子模板控制塊的選擇,進行查詢、修改、插入、刪除。所以信息管理系統功能模塊圖設計如下:
醫院管理系統流程圖
醫院管理的基本業務流程如圖
第二章
概念結構設計 通常,把每一類數據對象的個體稱為實體,而每一類對象的集合稱為“實體集”。而 E—R 模型的主要成分是實體、聯系和屬性。如果用矩形框表示實體集,用帶半圓的矩形表示屬性,用線段連接實體集與屬性,當一個屬性或屬性組合指定為主碼時,在實體集與屬性的連接上標記一斜線,則可以表示實體集及每個實體集涉及的屬性,實體集之間存在各種關系,通常把這種關系稱為“聯系”。聯系有三類:一對一的聯系(1:1);一對多的聯系(1:n);多對多的聯系(m:n)。
例如: 此醫院系統中“科室”與“病人”,“ 科室”與“病房”,“病人”與“病房”等之間存在的是一對多的聯系(1:n);一個醫生屬于一個科室,負責多個病人的診治,一個科室有多個病房,多個醫生,一個病房屬于一個科室 所以,此學生信息系統中實體集與實體集的聯系,E—R 模型如下:
醫生實體子 E E- -R R 圖
病人實體子 E E- -R R 圖
科室實體子 E E- -R R 圖
病房實體子 E E- -R R 圖
全局 E E- -R R 圖
第三章
邏輯結構設計 E-R 圖到關系模式的轉換:
用 E-R 圖 描述了醫院病房系統中實體集與實體集的聯系,目的以 E-R 圖為工具,設計關系型的數據庫,即確定應用系統所使用的數據庫包含那些表,以及每個表的結構是怎么樣的。
對于(1:n)聯系既可單獨對應一個關系模式,也可以不單獨對應一個關系模式,如果聯系是單獨對應一個關系模式,則由聯系的各實體集的主碼屬性構成關系模式,n 端的主碼作為該關系模式的主碼;如果聯系不單獨對應一個關系模式,則由聯系的屬性及 1 端的主碼加入 n 端實體集對應關系模式中,主碼仍是 n 端的主碼。本系統采用的是單獨對應一個關系模式。
所以各實體的 E-R 圖轉換其關系模式的如下:
醫生表(工作證號,姓名,性別,職稱,聯系電話,出生日期)
病人表(身份證號,姓名,性別,年齡,聯系方式)
科室表(科室號,科名,科地址,聯系電話)
病房表(病房號,床位號)
第四章
物理實現 數據庫是 SQL Server 2000 存儲和管理的對象,從邏輯上看,SQL Server 2000 數據庫由存放數據的表以及支持這些數據庫的存儲、檢索、安全性和完整性的對象所組成;從物理上看,SQL Server 2000 物理數據庫指用于存儲數據對象的文件及文件組。數據庫創建有二個途徑:一是通過企業管理器,二是查詢語句。
本醫院病房信息管理系統的建立是通過查詢語句建立,創建如下:
數據字典
doctor offfice sickroom patient
數據庫的創建
數據庫是 SQL Server 2000 存儲和管理的對象 查詢分析器:
create database
hospital on (name="hospital_data", Filename="e:\", Size=5mb, Maxsize=20mb, Filegrowth=10% ) Log on (name="hospital_log", Filename="e:\", Size=2mb, Maxsize=5mb, Filegrowth=1mb ) Go 結果顯示窗格:
CREATE DATABASE 進 程 正 在 磁 盤 "hospital_data" 上分配
MB 的空間。
CREATE DATABASE 進 程 正 在 磁 盤 "hospital_log" 上分配
MB 的空間。
表對象的創建與操作
建立數據庫最重要的一步就是創建其中的數據表,即決定數據庫包括哪些表,每個表中的包含哪些字段,每個字段的數據類型等。創建表有二種途徑,一是企業管理創建,二是查詢語句,此設計用的是第二種。
字段名稱 字段含義 數據類型 是否為主鍵 約束條件 dno 工作證號 varchar(20) 是 非空
dname 姓名 varchar(16)
dsex 性別 bit
默認為 0 birthday 出生日期 datetime
非空 tel 聯系電話 char(20)
title 職稱 char(10)
ono 所屬科室號 varchar(16)
字段名稱 字段含義 數據類型 是否為主鍵 約束條件 ono 科室號 varchar(16) 是 非空
oname 科名 varchar(16)
address 科地址 varchar(16)
tel 聯系電話 char(20)
字段名稱 字段含義 數據類型 是否為主鍵 約束條件 sno 病房號 varchar(16) 是 非空
num 床位數 varchar(20)
字段名稱 字段含義 數據類型 是否為主鍵 約束條件 pno 身份證號 varchar(20) 是 非空
pname 姓名 varchar(16)
psex 性別 bit
默認為 0 birthday 出生日期 datetime
非空 sno 病房號 varchar(20)
dno 主治醫生號 varchar(20)
對表的插入、修改和刪除可用查詢語句或界面操作來操作,但通過用查詢語句操作表數據更為靈活,功能更為強大。
醫生表 r doctor 創建與操作 use hospital create table doctor/*醫生表 doctor 信息的創建*/ ( dno
varchar(20) primary key,
dname
varchar(16), dsex
bit not null default(0), birthday
datetime
not null, tel
char (20) , title
char(10), ono
varchar(16) ) 結果顯示窗口:
/*醫生表 doctor 信息的插入*/ insert into doctor values (‘ 結果顯示窗格:
/*醫生表 doctor 信息的修改*/ update doctor set birthday ="1989-11-5", title =’門診醫師’ where dno ="00001" 結果顯示窗格:
/**醫生表 doctor 信息的刪除*/ delete doctor where dno ="00001" 結果顯示窗格:
use hospital
create table patient /*創建病人表 patient*/ ( pno
varchar(20)
primary key,
pname
varchar(16), psex
bit
not null default(0), birthday
datetime
not null, tel
char (20) , sno
varchar(16), dno
varchar(20) ono
varchar(16) ) 結果顯示窗格:
/*病人表 patient 信息的插入*/ Insert into patient values
(,’’,‘李冰’, ‘1’, ‘1981-10-23’ ‘‘,’301’, ‘00002 ‘, ‘0222’) 結果顯示窗格:
/*病人表 patient 信息的修改*/ update patient set dno =254
where pno =’’ 結果顯示窗格:
/*病人表 patient 信息的刪除*/
結果顯示窗格:
use hospital create table office ( ono
varchar(16)
primary key,
oname
varchar(16), address
varchar(16), tel
char(20)
) 結果顯示窗口:
/*科室表 office 信息的插入*/ insert
into office values
(‘0020’, ‘手足科‘, ‘北區 6 號樓’, ‘’)
結果顯示窗格:
/*科室表 office 信息的修改*/ ’0020’ 結果顯示窗格:
/*科室表 office 信息的刪除*/ delete office where ono ="0020" 結果顯示窗格:
/*病房表 sickroom 創建與操作*/ create table
sickroom ( sno
varchar(16)
primary key,
num
varchar(20) ) 結果顯示窗口:
/*病房表 sickroom 信息的插入*/ insert
into sickroom values(’304’,’3’)
結果顯示窗格:
/*病房表 sickroom 信息的修改*/ update sickroom set num =5 where sno =’304’ 結果顯示窗格:
/*病房表 sickroom 信息的刪除*/ delete sickroom where sno ="304" 結果顯示窗格:
視
圖
視圖是由一個或多個基本表(或視圖)導出的數據信息,可根據用戶的不同建立不同的視圖。
如下三個視圖以及視圖的 T-SQL 語句:
創建一個視圖 vw1 ,通過該視圖可以看到每個病人的身份證號,姓名,年齡,和聯系電話 create view vw1(身份證號,姓名,年齡,聯系電話) as select pno,pname,year(getdate())-year(birthday),tel from patient select * from vw1 結果顯示:
create view vw2 as select * from patient where psex="1" select * from vw2 create view vw3(身份證號,姓名,所住病房號,所屬科室名,主治醫生) as select pno,pname,,oname,dname
from patient,doctor,sickroom,office where = and =
and =
and year(getdate())-year>30 select * from vw3 表的 T T- -L SQL 語句
查詢是數據庫的核心操作,是數據庫的其他操作(如插入、修改、刪除等)的基礎。T-SQL 語句對數據庫的查詢使用 select 語句。select 語句具有靈活的使用方式和強大的功能。
如下是對醫院病房數據庫進行的各種查詢:
簡單查詢 (1)select * from doctor where title="主治醫師"
/*查詢主治醫師的信息*/ 結果顯示窗格:
(2)select * from patient where year(getdate())-year(birthday)<20 /*查詢年齡<20 病人信息*/ 結果顯示窗格:
模糊查詢 /*查詢姓王的病人的所有信息*/ select * from patient where pname like "王%" 嵌套查詢 (1)查詢所有病情屬于牙科的病人的所有信息。
select * from patient where ono in (select ono from office where oname="牙科") (2)查詢所有被張青醫生主治的男病人的姓名和病情所屬科室號。
select pname,ono from patient where dno in
(select dno from doctor where dname="張青") and psex="0"
連接查詢 (1)查詢所有病情屬于牙科的病人的所有信息。
select * from patient,office
where = and oname="牙科" (2)查詢所有被張青醫生主治的男病人的姓名和病情所屬科室號。
select pname,patient,ono from patient,doctor
where = and psex="0" and dname="張青"
聚合函數 —— 分類聚合
(1)統計女病人的總人數 select 女病人人數=count(*) from
patient
where psex=1
(2)男性主治醫生的人數 select 主治醫生的人數=count(*) from doctor where dsex=0 and title="主治醫師" (3)20 歲以上的男女醫生人數 select dsex as 性別,人數=count(*)from doctor where year(getdate())-year(birthday)>20 group by dsex
存儲過程
在 SQL Server 中,存儲過程是數據庫對象之一,它有執行速度快、確保數據庫的安全和自動完成需要預先執行的任務等優點,本設計創建兩個個存儲過程,一個功能是創建一個存儲過程 prcs1, 通過該存儲過程可以查看所有病人的信息。另一個功能是創建一個存儲過程 prcs2,通過輸入醫生職稱,可以查看有該職稱的醫生人數。
存儲過程的創建和調用如下:
存儲過程:
(1)創建一個存儲過程 prcs1,通過該存儲過程可以查看所有病人的信息。
create proc prcs1 as select * from patient (2)創建一個存儲過程 prcs2,通過輸入醫生職稱,可以查看有該職稱的醫生人數。
create proc prcs2 @title varchar(16),@n int output as if exists (select * from doctor where title=@title) (select @n=count(*) from doctor ) else print"沒有該職稱" declare @name1 varchar(20),@n1 int set @name1="主治醫師" exec prcs2 @name1,@n1 output select @name1 as 職稱,@n1 as 人數
觸發器
觸發器是一類特殊的存儲過程。觸發器與表的關系密切,可用于維護表中的數據。當有數據影響到觸發器維護的數據時,觸發器自動執行。
如下是系統觸發器的創建和執行:
創建一個觸發器把醫生表中工作證號為 0006 的職稱由’實習醫生’改為’主治醫生’ create trigger
trgs on doctor for update as begin declare @no varchar(20) select @no=dno from deleted update doctor set title="主治醫生"
where dno=0006 end update doctor set
title="主治醫生" where dno=0006 select *from doctor
/* update 操作之前,工作證號為 0006 的職稱,部分信息如下*/ /* update 操作之后,工作證號為 0006 的職稱,部分信息如下*/ 第五章
總結 由醫院信息管理系統的需求設計出發,得出“醫生”、“病人”、“病房”、“科室”、四個實體集的四個表以及表的設計。表的 E-R 模型、表的關系模式以及它們之間的相互轉換,以此來顯示表之間的關系,通過這讓我們熟練掌握其思想。
通過做課程設計,有幾點感想,歸納如下。
1. 扎實的理論基礎。如果不掌握它們,很難寫出高水平的程序。而這一點又是我們所缺乏的。
2. 不鉆牛角尖。當遇到障礙的時候,暫時遠離電腦,當重新開始工作的時候,也許會發現那些難題現在竟然可以迎刃而解。
3. 多與別人交流。三人行必有我師。
4. 良好的編程風格。注意養成良好的習慣,代碼的縮進編排,變量的命名規則要始終保持一致。如果注釋和代碼不一致,那就更加糟糕。
5.具體到程序的實現,我發現比較集中的問題就在于控件和數據庫的連接上,有的時候比較簡單,有的時候又比較迷茫,最后在和同學的討論下才順利完成。
致謝 本設計是在劉書影老師的悉心指導下完成的。通過我們的設計選題、資料查找,劉老師修改等方面對我進行了悉心的指導和鼓勵。劉老師淵博的知識、嚴謹的治學態度、求實的工作作風、平易近人的待人方式將是我以后工作和學習的榜樣。值此設計完成之際,謹向指導老師劉老師致以最衷心的感謝和最崇高的敬意! 通過我們組的努力做出了這個醫院信息管理系統,我們組六個同學在這次課程設計中不僅加深了對數據庫的理解,還加強了我們團隊合作的能力,我想這對我們今后的學習生活也是有著無比重要的意義。當我們看到我們的勞動成果,無比的開心,在這一個星期中,我們不分晝夜的工作,雖然參考了大量資料,但是大部分的工作還是要靠自己完成。通過這次的 SQL Server 課程設計,我們系統的復習了 SQL 的指令用法,深入了解了SQL 數據庫的功能,對 SQL 命令熟練運用,讓我更加加深了它的語句思想!讓我從這次課程設計中獲得了好多知識,獲益匪淺!
參考文獻 [1] 薩師煊,王珊.數據庫系統概論(第三版). 北京:高等教育出版社,2000. [2] 齊治昌,譚慶平,寧洪.軟件工程(第二版).北京:高等教育出版社,2004.
[3] 錢雪忠.數據庫原理應用(第二版). 北京:北京郵電大學出版社,2008.
推薦訪問: 病房 信息管理系統 醫院上一篇:小游戲-水淹村頭
在偉大祖國73華誕之際,我參加了單位組織的“光影鑄魂”主題黨日活動,集中觀看了抗美援朝題材影片《長津湖》,再一次重溫這段悲壯歷史,再一次深刻感悟偉大抗美援朝精神。1950年10月,新中國剛剛成立一年,
根據省局黨組《關于舉辦習近平談治國理政(第四卷)讀書班的通知》要求,我中心通過專題學習、專題研討以及交流分享等形式,系統的對《習近平談治國理政》(第四卷)進行了深入的學習與交流,下面我就來談一談我個人
《習近平談治國理政》(第四卷)是在百年變局和世紀疫情相互疊加的大背景下,對以習近平同志為核心的黨中央治國理政重大戰略部署、重大理論創造、重大思想引領的系統呈現。它生動記錄了新一代黨中央領導集體統籌兩個
《真抓實干做好新發展階段“三農工作”》是《習近平談治國理政》第四卷中的文章,這是習近平總書記在2020年12月28日中央農村工作會議上的集體學習時的講話。文章指出,我常講,領導干部要胸懷黨和國家工作大
在《習近平談治國理政》第四卷中,習近平總書記強調,江山就是人民,人民就是江山,打江山、守江山,守的是人民的心。從嘉興南湖中駛出的小小紅船,到世界上最大的執政黨,在中國共產黨的字典里,“人民”一詞從來都
黨的十八大以來,習近平總書記以馬克思主義戰略家的博大胸襟和深謀遠慮,在治國理政和推動全球治理中牢固樹立戰略意識,在不同場合多次圍繞戰略策略的重要性,戰略和策略的關系,提高戰略思維、堅定戰略自信、強化戰
《習近平談治國理政》第四卷集中展示了以習近平同志為核心的黨中央在百年變局和世紀疫情相互疊加背景下,如何更好地堅持和發展中國特色社會主義而進行的生動實踐與理論探索;對于新時代堅持和發展什么樣的中國特色社
在黨組織的關懷下,我有幸參加了區委組織部組織的入黨積極分子培訓班。為期一周的學習,學習形式多樣,課程內容豐富,各位專家的講解細致精彩,對于我加深對黨的創新理論的認識、對黨的歷史的深入了解、對中共黨員的
《習近平談治國理政》第四卷《共建網上美好精神家園》一文中指出:網絡玩命是新形勢下社會文明的重要內容,是建設網絡強國的重要領域。截至2021年12月,我國網民規模達10 32億,較2020年12月增長4
剛剛召開的中國共產黨第十九屆中央委員會第七次全體會議上討論并通過了黨的十九屆中央委員會向中國共產黨第二十次全國代表大會的報告、黨的十九屆中央紀律檢查委員會向中國共產黨第二十次全國代表大會的工作報告和《