bao cao tt HE THONG QUAN LY BENH NHAN TAI BENH VIEN KHANH HOA
Trang 1LỜI NÓI ĐẦU
Ngày nay, cùng với sự phát triển vượt bậc của khoa học kỹ thuật thì côngnghệ thông tin là một trong những lĩnh vực có nhiều đóng góp thiết thực nhất,công nghệ thông tin có mặt trong hầu hết các lĩnh vực của cuộc sống, đặc biệt nólà công cụ hỗ trợ rất đắc lực trong công tác quản lý Dễ dàng thấy được việc đưatin học vào trong quản lý kinh doanh là một ứng dụng quan trọng trong rất nhiềuứng dụng của cơ sở dữ liệu Nhờ vào công tác tin học hoá mà công việc quản lý vàđiều hành doanh nghiệp tỏ ra rất nhanh chóng và hiệu quả Chính vì lẽ đó mà cơsở dữ liệu như là một giải pháp hữu hiệu nhất cho các doanh nghiệp có thể tồn tạivà phát triển một cách nhanh chóng
Bệnh viện đa khoa tỉnh Khánh Hoà là một trong những trung tâm khámchữa bệnh lớn nhất của tỉnh Khánh Hoà Do đó, nhu cầu ứng dụng quản lý bệnhnhân bằng tin học là một vấn đề hết sức thiết thực và tất yếu Chính vì lí do đóchúng tôi chọn đề tài quản lý bệnh nhân này làm đề tài thực tập chuyên ngành vàthực tập tốt nghiệp sắp tới
Hiện nay, có rất nhiều phần mềm hệ quản trị cơ sở dữ liệu khác nhau Tuynhiên căn cứ vào tình hình quản lý bệnh nhân của bệnh viện hiện nay, chúng tôiđã chon hệ quản trị cơ sở dữ liệu SQL Server 2000 và ngôn ngữ hỗ trợ cài đặt giaodiện của ứng dụng là Visual Basic 6.0
Mặc dù có nhiều cố gắng nhưng do thời gian thực tập có hạn cũng như vốnkiến thức còn nông cạn nên không thể tránh khỏi những thiếu sót Rất mong đượcgóp ý của quý thầy cô cùng các bạn để báo cáo được hoàng thiện hơn
Nhóm sinh viên thực hiệnBùi Văn Mừng
Đỗ Văn Cao
Trang 2PHẦN I: TỔNG QUAN VỀ NGÔN NGỮ CÀI ĐẶT
I GIỚI THIỆU VỀ HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU VÀ SQL SERVER 2000 I.1 KHÁI NIỆM CƠ BẢN VỀ CÁC LOẠI CƠ SỞ DỮ LIỆU
Một hệ quản trị cơ sở dữ liệu là một hệ thống các chương trình hỗ trợ các tác vụ quản lí, khai thác dữ liệu theo mô hình cơ sở dữ liệu quan hệ
SQL server là một hệ thống quản lí cơ sở dữ liệu quan hệ (RDB0MS) haycòn được gọi là Relational Database Management System Cơ sở dữ liệu quan hệlà cơ sở dữ liệu mà dữ liệu bên trong nó được tổ chức thành các bảng Các bảngđược tổ chức bằng cách nhóm dữ liệu theo cùng chủ đề và có chứa các cột và cáchàng thông tin Sau đó các bảng này lại liên hệ với nhau bởi bộ Database Enginekhi có yêu cầu RDBMS là một trong những mô hình cơ sở dữ liệu thông dụngnhất hiện nay
I.2 GIỚI THIỆU CHUNG VỀ SQL SERVER 2000
SQL(Structured Query Language), là ngôn ngữ dùng để truy vấn cơ sở dữliệu, hay nói cách khác đây là ngôn ngư truy vấn cho phép lấy thông tin về từ cácbảng dữ liệu
SQL Server 2000 tối ưu hơn nhiều so với cơ sở dữ liệu quan hệ Chúng pháttriển để sử dụng trên nhiều ấn bản như CE, Personal, Desktop Engine, Standard,Developer, Enterprise
SQL Server 2000 hỗ trợ kiểm tra khoá chính, phụ thuộc tồn tại, miền giá trị,
… của dữ liệu bên trong các bảng một cách chặt chẽ
SQL Server 2000 hỗ trợ khá mạnh cho cơ sở dữ liệu đa truy cập Tức cơ sởdữ liệu mạng,…
Những thành phần chính trong SQL Server 2000 bao gồm
SQL Server
2000
Đây là phần chính của hệ thống, là trungtâm điều hành những phần thực thi khác VớiDesktop Engine bạn xẽ tìm thấy các dich vụtrong hệ thống như SQL Server Agent(Schedul), SQL Server Profiler ,… và một sốcông cụ khác
DesktopEnginePersonalStandardDeveloperEnterpriseFull-Text
Sarch
Đây là phần tự chọn trong lúc cài đặt, nếubạn muốn chức năng tìm kiếm thì nên chọn hệthống này vì chúng không là phần mặc nhiên
Full-Text Sarch cung cấp chức năng tìmkiếm từ (word) rất mạnh, nếu sử dụng Internetđể tìm kiếm thì đây là giải pháp tuyệt vời
Personal(ExceptWin95)StandardDeveloperEnterprise
Trang 3Nếu bạn muốn tìm kiếm một chuỗi con trongmột đoạn văn bản lớn thì đây là công cụ thíchhợp cho công việc đó.
English Query English Query cho phép người sử dụng
không có kỹ thuật vê SQL cũng có thể sửdụng SQL Server, bằng cách dặt câu hỏi bằngchuỗi English sau đó được dịch ra Query màcó thể thực thi trên SQL Server
PersonalStandardDeveloperEnterprise
Analusis
Services phần cài đặt, chúng là dạng sản phẩm tự chọn,Phần này không bao gồm mặc định trong
là công cụ phân tích OLAP (Online AnalysisProcessing), sử dụng cho cơ sở dữ liệu lớn
Những phiên bản có OLAP đầy đủ chứcnăng là Enterprise và Developer, nhưng trongấn bản Standard và Personal cũng có một chứcnăng chính của OLAP
Personal Standard Developer Enterprise
Replication Chức năng này cho phép tái tạo một bản sao
đến SQL Server khác, thông thường dùng chứcnăng này cho các hệ thống Server từ xa haytrong network, nhằm để làm giảm trao đổi dữliệu giữa các SQL Server với nhau
DesktopEnginePersonalStandardDeveloperEnterpriseData
Transformatuion
Servise
Data Transformatuion Servise (DTS) đượcmở rộng trong phiên bản SQL Server 2000,bao gồm những chức năng trao đổi dữ liệugiứa các cơ sở dữ liệu, và giao tiếp dữ liệugiữa các cơ sở dữ liệu khác nhau, đây là nhữnggiải pháp lập trình trên Visual Basic
DesktopEnginePersonalStandardDeveloperEnterpriseNhững đặc tính mở rộng trong các ấn bản khác nhau của SQL Server 2000
Symmetric Multiprocessing (SMP): Dịch vụ này được hỗ trợ trong SQL
Server 2000, dịch vụ này phân phối công việc xử lí trên hệ thống có nhiều bộ vixử lí để làm cân bằng tiến trình trên các CPU
Clustering Support: Chỉ có trong ấn bản Enterprise và Developer,
Clustering cho phép hệ thống cân bằng khi có một Server bị ngừng thì những hệthống khác tiếp nhận và xử lí
Hiện tại chỉ thực hiện chức năng này trên hai Server đó là Windows 2000Enterprise và Windows 2000 Datacenter
I.2.1 Các thành phần của SQL Server 2000.
RDBMS cũng như SQL Server chứa đựng nhiều đối tượng bao gồm:
- Database: Cơ sở dữ liệu SQL Server
Trang 4- Tập tin log: tập tin lưu trữ những chuyển tác của SQL
- Tables: bảng dữ liệu
- Filegroups: Tập tin nhóm
- Diagrams: Sơ đồ quan hệ
- Views: Khung nhìn (hay bản ảo) số liệu dựa trên bản
- Stored Procedure: Thủ tục và hàm nội
- Users defined: Hàm do người dùng định nghĩa
- Users: Người sử dụng cơ sở dữ liệu
- Rules: Những quy tắc
- Defaults: Các giá trị mặc nhiên
- User-defined data type:Kiểu dữ liệu do người dùng định nghĩa
- Full-text catalogs: Tạp phân loại dữ liệu text
I.2.2 Đối tượng cơ sở dữ liệu
Cơ sở dữ liệu là đối tượng có ảnh hưởng cao nhất khi bạn làm việc với SQLServer, tuy nhiên những đối tượng con của cơ sở dữ liệu mới là thành phần chínhcủa cơ sở dữ liệu
Bản thân SQL Server là một hệ cơ sở dữ liệu, chúng bao gồm các đối tượngnhư database, table, view, procedure nêu trên cùng một số cơ sở dữ liệu hỗ trợkhác
Cơ sở dữ liệu SQL Server là cơ sở dữ liệu đa người dùng, với mỗi Serverbạn chỉ có một hệ quản trị cơ sở dữ liệu Nếu muốn có nhiều hệ quản trị cơ sở dữliệu bạn cần có nhiều Server tương ứng
Truy cập cơ sở dữ liệu của SQL Server dựa vào những tài khoản người dùngriêng biệt và ứng với quyền truy cập nhất định Cài đặt SQL Server bạn có 6 cơ sởdữ liệu mặc định sau:
- Master: Bất kỳ SQL Server nào đều có cơ sở dữ liệu Master (còn gọi là
master file), cơ sở dữ liệu này chứa đựng tất cả các bảng dữ liệu đặc biệt (bảng hệthống), chúng kiểm soát tất cả các hoạt động cúa hệ SQL Server
Ví dụ: Khi người dùng cơ sở dữ liệu mới trong SQL Server, thêm hay xoamột procedure, tất cả những thông tin này đều được trữ trong cơ sở dữ liệu mastercủa hệ thống
- Cơ sở dữ liệu model: Cơ sở dữ liệu này chứa đựng tất cả template dùng
làm mẫu để tạo cơ sở dữ liệu mới Khi bạn tạo mới một cơ sở dữ liệu thì SQLServer lấy tất cả các mẫu (bao gồm bảng view …) từ cơ sở dữ liệu model này
Xuất phát từ tính chất cơ sở dữ liệu mẫu giúp SQL Server thực hiện việc tạomới cơ sở dữ liệu cho người dùng khi có yêu cầu, bạn không được xoá cơ sở dữliệu này
Khi một cơ sở dữ liệu mới được tạo ra thì cơ sở dữ liệu mới này ít nhất cũngbằng và giống như cơ sở dữ liệu model
Trang 5- Cơ sở dữ liệu msdb: Như đã nêu, chúng ta có hai cơ sở dữ liệu hệ thống
master và model, nếu xoá một trong hai cơ sở dữ liệu này thì hệ thống SQL Serverxẽ bị lỗi, nhưng với cơ sở dữ liệu msdb thì khac Msdb chính là SQL Agent lưu trữtất cả các tác vụ xảy ra trong SQL Server
- Cơ sở dữ liệu Tempdb: Là một trong những cơ sở dữ liệu chính trong
SQL Server Cơ sở dữ liệu này cho phép người dùng tạo những ứng dụng thamkhảo hay thực tập trước khi bạn bắt đầu với cơ sở dữ liệu thực Ngoài ra chúngcòn giúp thực hiện những thao tác về cơ sở dữ liệu mỗi khi SQL Server khởi động
- Cơ sở dữ liệu pubs: Chứa hầu hết nội dung về hướng dẫn, trợ giúp và
sách tham khảo về SQL Server
- Cơ sở dữ liệu Northwind: Cũng giống như cơ sở dữ liệu pubs, đây là cơ
sở dữ liệu mẫu cho người dùng tham khảo, hoặc các lập trình viên Visual Basichay Access dùng để truy cập dữ liệu SQL Server Cơ sở dữ liệu này được cài đặtnhư một phần của SQL Server, nếu cần dùng cấu trúc của hai cơ sở dữ liệu nàybạn có thể sử dụng hai file kịch bản script mang tên inspub.sql, và insnwnd.sql
- Tập tin chuyển tác log: Tập tin chứa đựng những hoạt động, hay cả
những chuyển tác của cơ sở dữ liệu theo thời gian Thông thường khi cần tìm hiểusự cố xảy ra với cơ sở dữ liệu, người dùng chỉ cần tham khảo tập tin log xẽ biếtđược nguyên nhân
I.2.3 Giới thiệu về đối tượng của cơ sở dữ liệu
- Bảng-Table
Trong cơ sở dữ liệu, bản (table) là phần chính của chúng Do bảng là đốitượng lưu trữ dữ liệu thực, khi cần giao tiếp với cơ sở dữ liệu khác bảng là đốitượng căn bản nhất trong bất kỳ loại cơ sở dữ liệu nào, chúng được coi như mộtmiền dữ liệu
Mỗi bảng được định nghĩa nhiều trường, mỗi trường (field còn gọi là columnname) ứng với mỗi loại kiểu dữ liệu Dữ liệu nhập vào có thể chấp nhận hặc từchối tuỳ thuộc vào nguyên tắc ràng buộc dữ liệu hoặc loại dữ liệu tương thích dohệ thống hay người dùng định nghĩa
Khi định nghĩa bảng cơ sở dữ liệu bạn cần quan tâm đến các yếu tố sau:+ Key: Trường đó có khoá hay không (primary Key)
+ ID: Trường có thuộc tính Indentity hay không
+ Column name: Tên của trường (cột)
+ Data type: Loại dữ liệu cho trường tương ứng
+ Size: Kích thước trường dữ liệu
+ Allow null: Cho phép giá trị rỗng lưu trong trường hay không
+ Default: Giá trị mặc nhiên cho trường
+ Identity: Nếu bạn sử dụng một trường có giá trị tự động như autonumbertrong acces, trường nay Not Null và Identity: Yes(On)
Trang 6+ Identity Seed: Nếu trường (cột) này là Identity, cần số bắt đầu là 1 hoặc
+ Clustered: Ứng với loại chỉ mục này một bảng chỉ có một chỉ mục, và sốliệu được sắp xếp theo trang
+ Non-Clustered: Ứng với loại chỉ mục này có một bảng có thể có nhiềuchỉ mục và số liệu được săp xếp theo trường dữ liệu mà bạn trỏ đến
- Bẫy lỗi-Triggers
Là đối tượng chỉ tồn tại trong bảng, cụ thể là một đoạn mã và tự đông thựchiện khi một hành động nào đó xảy ra đối với dữ liệu trong bảng như Insert,Update, Delete Trigger có thể bẫy rất nhiều tình huống như copy dữ liệu, xoá dữliệu, cập nhật dữ liệu, kiểm tra dữ liệu theo một tiêu chuẩn nào đó
- Ràng buộc- Constraints
Constraints là một đối tượng, nó là một phần nhỏ trong bảng, chúng ràngbuộc dữ liệu trong bảng hoặc các bảng khác phải tuân theo một quy tắc nào đó
- Diagram-Lược đồ quan hệ
Khi xây dựng cơ sở dữ liệu cho ứng dung hay thương mại điện tử, thườngđều phải dựa trên trình phân tích thiết kế hệ thống Sau những bước phân tích vàthiết kế, bạn sẽ thiết lập quan hệ dữ liệu giữa các thực thể ERD(Entityrelationship diagram)
View là khung nhìn (hay bảng ảo) của bảng Cũng giống như bảng nhưngView không thể chứa dữ liệu, bản thân view có thể tạo thêm trường mới dựa vàonhững phép toán biểu thức của SQL Server View còn có thể kết nối nhiều bảnglại với nhau theo quan hệ nhất định cùng với những tiêu chuẩn, nhằm tạo ra mộtbảng dữ liệu với yêu cầu người dùng
- Thủ tục nội-Stored Procedure
Stored Procedure còn gọi là Spocs, tiếp tục phát triển như một phần SQLtrên cơ sở dữ liệu Stored Procedure cho phép khai báo biến, nhận tham số cũngnhư thực thi các phát biểu có điều kiện Stored Procdure có các ưu điểm lớn sau:
+ Kế thừa tất cả các phát biểu của SQL, và là một đối tượng xử lí số liệuhiệu quả nhất khi dùng SQL Server
+ Tiết kiệm thời gian thực thi trên dữ liệu
+ Có thể goi Stored procedure theo cách gọi thủ tục hay hàm trong ngônngữ lập trình truyền thốn, đồng thời sử dụng lại khi có yêu cầu
- Sử dụng kiểu dữ liệu Cursor (Cursor typy)
Trang 7Khi dùng cơ sở dữ liệu SQL Server, nếu có nhu cầu tính toán trên bảng sốliệu, chuyển tác thực hiện trên từng mẩu tin, ta nên nghĩ đến kiểu dữ liệu mangtên Cursor.
I.2.3 Kiểu dữ liệu-Data type
Bất kỳ trường nào trong bảng (Table) của cơ sở dữ liệu đều phải co kiểu dữliệu Một số kiểu dữ liệu SQL Server cho phép định nghĩa chiều dài của kiểu trongkhi một số kiểu khác thì không
Cũng như những ngôn ngữ lập trình khác SQL Server cung cấp đầy đủ kiểudữ liệu cần thiết, như: kiểu số nguyên (Binary, Int, TinyInt, …), kiểu số thực(Float), kiểu tiền tệ (Money, SmallMoaney,…) kiểu chuỗi (char, nChar, VarChar,Text,…), và nhiều kiểu dư liệu khác
Ngoài ra SQL Server còn cho phép chuyển đổi qua lại giữa các kiểu dữliệu, tuy nhiên điều này cũng có một số hạn chế đối với một số kiểu dữ liệu Vídụ: kiểu binary không thể nhận chuyển đổi sự chuyển đổi từ dữ liệu kiểu float hayreal…
I.2.4 Các phát biểu cơ bản của T-SQL
- Cú pháp tổng quát của lệnh Select
SELECT <danh sách các cột>
FROM <danh sách bảng>
[WHERE <các điều kiện ràng buộc>]
[GROUP BY <tên cột hay biểu thức sử dụng cột trong SELECT>][HAVING <điều kiện bắt buộc dựa trên GROUP by>]
[ORDER BY <danh sách cột>]
Trong đó tất cả những phát biểu nằm trong cặp dấu [] thì có thể có hoặc cóthể không có
Ví dụ:
+ Để lấy tất cả các bệnh nhân trong bảng tblBenhNhan ta dùng câu truyvấn sau:
SELECT *FROM tblBenhNhanTrong câu lệnh này thiếu vắng tất cả các phát biểu sau FROM trên
+ Để chọn ra tất cả các bệnh nhân trong bảng tblBenhNhan với Tên bệnhnhân là Nguyễn Văn A ta làm như sau
SELECT *
FROM tblBenhNhan
WHERE tblBenhNhan.TenBenhNhan=’Ngyuên Van A’
Vậy câu lệnh SELECT dùng để chỉ ra trường (cột) dữ liệu cần lấy, FROMđể chỉ ra nơi chứa dữ liệu (hay bảng cần truy vấn), WHERE chỉ ra điều kiện lấy dữliệu
ORDER BY dùng để hiển thị kết quả truy vấn theo tiêu chuẩn của ngườidùng Nếu thiếu tham số này thì việc sắp xếp xẽ theo thứ tự ALPHABET
Trang 8Ngoài những câu lệnh truy vấn trên trong SQL Server còn cung cấp một sốhàm cũng như những biểu thức tính toán …
- Để thêm dữ liệu vào bảng (Table) ta dùng câu lệnh truy vấn sau:
INSERT INTO <Tên Bảng> (danh sách cột)VALUES (danh sách giá trị)
Ví dụ:
Để chèn dữ liệu vào bảng tblTinh ta có câu lệnh truy vấn sau:
INSERT INTO tblTinh (MaTinh, TenTinh)VALUES(‘001’, ‘Khánh Hoa’ø)
- Để sửa dữ liệu trong một bảng đã có sẵn ta sử dụng câu lệnh truy vấnUPDATE cú pháp như sau:
UPDATE FROM <Tên bảng>
SET <tên cột>=<giá trị>
WHERE <Điều kiện>
Ví dụ: ta muốn thay đổi tên tỉnh có mã số (‘001’) thành Đà Lạt ta làm nhưsau:
UPDATE FROM tblTinhSET tblTinh.TenTinh=’Đà Lạt’
WHERE tblTinh.MaTinh=’001’
- Để xoá dữ liệu trong một bảng ta dùng câu lẹnh truy vấn DELETE cúpháp như sau:
DELETE FROM <Tên bảng>
WHERE <điều kiện>
Ví dụ: Để xóa tỉnh có tên tỉnh là Khánh Hoà ta làm như sau
DELETE FROM tblTinhWHERE tblTinh.TenTinh=’Khánh Hoà’
Hoặc có mã tỉnh =001DELETE FROM tblTinhWHERE tblTinh.MaTinh=’001’
Ngoài ra trong SQL Server có những phát biểu cho phép kết nối nhiều bảnvới nhau (JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN, CROSSJOIN)
Ví dụ: để lấy địa chỉ của bệnh nhân ta cần xác định xã, huyện, tỉnh Vậy đểlấy về địa chỉ của bệnh nhân có rất nhiều cách song cách nào là nhanh nhất dỡphải viết lệnh nhiều mà hiệu quả lại cao Việc này được thực hiện nhờ tạo mộtView kết nối table tblTinh, tblHuyen, tblXa câu truy vấn như sau:
CREATE VIEW dbo.vwDiaChi
AS
dbo.tblXA.TenXa, dbo.tblXA.Maxa
Trang 9FROM dbo.tblHUYEN INNER JOIN
dbo.tblTINH ON dbo.tblHUYEN.MaTinh = dbo.tblTINH.MaTinh
INNER JOINdbo.tblXA ON dbo.tblHUYEN.MaHuyen = dbo.tblXA.MaHuyenKhí đã có view địa chỉ rồi ta chỉ cần gọi câu truy vấn sau là xẽ có thông tincần thiết về địa chỉ bệnh nhân
1 Tạo cơ sở dữ liệu – CREATE DATABASE
Để tạo cơ sở dữ liệu trong SQL Server ta dùng cú pháp sau
CREATE DATABASE <Database_name>
[ON [PRIMARY] (
[Name=<’Logical file name’>,]
FileName=<’FileName’>
[,SIZE=<Size in Megabyte or KiloByte]
[,MAXSIZE=<Size in Megabyte or KiloByte]
FILEGROWTH=<NO ò Kylobyte|Percentage>]
[,SIZE=<Size in Megabyte or KiloByte]
[,MAXSIZE=<Size in Megabyte or KiloByte]
FILEGROWTH=<NO ò Kylobyte|Percentage>]
)]
[COLLATE <Collation>]
[For Load|For Aâttch]
Trong đó:
- ON: Định nghĩa nơi chứa dữ liệu và không gian chứa tập tin log
- NAME: Định nghĩa tên cơ sở dữ liệu
- FILENAME: Tên tập tin cơ sở dữ liệu trên đĩa cứn, Lưu ý khi tạo cơ sở
dữ liệu ta đặt tập tin ở vị trí nào thì không thể di chuyển một cách thủcông được
Trang 10- SIZE: Cho biết dụng lượng cơ sở dữ liệu khi tạo chúng Thông thường là
1MB
- MAXSIZE: Dung lượng lớn nhất, khi dung lượng cơ sở dữ liệu tăng đến
mức Maxsize thì dừng lại
- FILEGROWTH: Dung lượng khởi tạo cùng dung lượng tối đa trong quá
trình thêm dữ liệu vào cơ sở dữ liệu
- LOG ON: Cho phép quản lí chuyển tác xảy ra trong quá trình sử dụng cơ
sở dữ liệu của SQL Server Thông thường chúng chiếm khoảng 25%dung lượng tập tin dữ liệu
Việc tạo một cơ sở dữ liệu bằng mã lệnh không phải là khó, song SQLServer cho phép tạo cơ sở dữ liệu băng giao diện đồ hoạ Để tạo cơ sở dữ liệu tadùng trình SQL Server Enterprise Manager màn hình tạo cơ sở dữ liệu bằngEnterprise Manager như sau:
Sau khi chúng ta Click vào New Database thì màn hinh tạo cơ sở dữ liệuhiện ra khi đó ta chỉ việc nhập đầy đủ các thông tin yêu cầu như: đường dẫn nơi đểtập tin cơ sở dữ liệu, dung lượng tập tin,…
2 Tạo bảng – CREATE TABLE
tạo bảng trong cơ sở dữ liệu cũng giống như tạo các đối tượng khác trongSQL Server Cú pháp đầy đủ để tạo bảng như sau:
Trang 11CREATE TABLE [Dataabase_name.[owner].table_name
(<column name><data type>
- Tên cột – Column Name: Tên cột cũng giống như tên bảng và tên cơ sở
dữ liệu không có khoảng trăng, không bắt đầu bằng chữ số và các ký tựđặc biệt…, tuy nhiên nên đặt tên ngắn gọn gợi nhớ
- Kiểu dữ liệu – Data type: Khi xây dựng cơ sở dữ liệu tất cả các trường
trong bảng cần phải có kiểu dữ liệu cụ thể Vấn đề quan trọng là chọnkiểu dữ liệu nào cho phù hợp với dữ liệu mà người dùng xẽ nhập vào,
- Giá trị mặc nhiên – Default: Gán giá trị mặc nhiên cho các cột khi
không có dữ liệu
- IDENTITY: Đây là giá trị cực kỳ quan trọng trong SQL Server Khi
chúng ta muốn một cột có giá trị tự động tăng Ta nên định nghĩa nhưIdentity
- NULL/NOT NULL: là trạng thái của một cột có cho phép nhập giá trị
null hay không
- Ràng buộc – Column constrain: Kiểm tra dữ liệu khi dữ liệu mới được
đưa vào cột hoặc dữ liệu bị thay đổi
- Ràng buộc bảng dữ liệu – TABLE CONSTRAINTS: Ràng buộc bảng
cũng giống như ràng buộc cột trong bảng, là kiểm soát dữ liệu nhập vàobảng theo một quy luật định sẵn
Song cũng có thể tạo bảng bằng giao diện dồ hoạ như với cơ sở dữ liệu.Trong khi xây dựng bảng cần chú ý đến các trường khoá
3.Tạo view
View là bảng ảo và cũng như với bảng view cũng có thể tạo được bằng mãlệnh cung như giao diện đồ hoạ
View cho phép kết nối nhiều bảng với nhau để hiển thị thông tin
4 Thủ tục được lưu và hàm (Stored Procedure hay sp, Function)
a Thủ tục được lưu (Stored Procedure)
Stored Procedure là một phần cực kỳ quan trọng trong cơ sở dữ liệu SQLServer Nếu biết SQL Server mà không biết Stored Procedure là một thiếu sót rấtlớn Cú pháp để tạo một Stored Procedure như sau:
Trang 12CREATE PROCEDURE | PRO<Procedure name>
[<Parameters name><data type>[VARYING]
[=<default value>][OUT PUT][,
[<Parameters name><data type>[VARYING]
[=<default value>][OUT PUT][,
Ví dụ tạo một Stored Procedure đơn giản:
Insert Into tblXa(
MaXa, TenXa,MaHuyen)
Values( @MaXa,@TenXa,@MaHuyen
GO
-Ơû trên ta tạo một Stored Procedure dùng để nhập một xã mới vào bảng Xã(tblXa) Khi đã có Stored Procedure này rồi ta chỉ cần gọi tên hàm và tham sốkèm theo mỗi khi nhập một xã mới vào table xã
b.Tạo hàm (Function)
Tương tự như Stored Procedure hàm cũng có thể tạo bằng giao diện dồ hoạcũng như mã lệnh song giá trị trả về của hàm đa dạng hơn chúng có thể trả về làmột bảng
Trang 13Ví dụ: Tạo hàm tìm kiếm bênh nhân theo tỉnh, hàm này trả về một bảngchứa thông tin về bệnh nhân trong tỉnh.
CREATE FUNCTION udf_TimBenhNhanTheoTinh
(Select MaHuyen From tblHuyen Where tblHuyen.MaTinh in thuoc tinh
( Select MaTinh From tblTinh Where tblTinh.TenTinh=@TenTinh))) -
I.3 TỔNG QUAN VỀ VISUAL BASIC VÀ CƠ SỞ DỮ LIỆU TRONG VISUAL BASIC
Visual Basic Chứa một số phương tiện giúp cho việc áp dụng kỹ thuậthướng đối tượng trong việc truy cập dữ liệu Trong Visual Basic có rất nhiềuphương pháp truy cập dữ liệu như: ADO, ADODB, DAO,… nói chung các đối tượngnày có những thuộc thuộc tính tương đối giống nhau Trong báo cáo này chúng tôichủ yếu đi sâu vào đối tượng ADO đây cũng là công cụ được dùng trong chươngtrình
I.3.1 ADO là gì ?
ADO (ActiveX Data Object hay đối tượng dữ liệu ActiveX) Ta có thể hìnhdung rằng ADO là một mô hình làm giảm kích thước của mô hình RDO (Đối tượngdữ liệu từ xa) Mô hình đối tượng dữ liệu ActiveX rất gọn Nó được thiết kế để chophép lập trình viên lấy được một tập các Record từ nguồn dữ liệu một cách nhanhnhất nếu có thể Tốc độ và tính đơn giản là một trong các mục tiêu cốt lõi củaADO, mô hình này được thiết kế để cho phép tạo ra một đối tượng Recordset màkhông cần phải di chuyển qua các đối tượng trung gian khác trong quá trình lậptrình Thực tế chỉ có ba đối tượng cốt lõi trong mô hình:
- Connection: Đại diện kết nối thực sự
- Command: Được sử dụng để thực thi các query dựa vào kết nối dữ liệu
Trang 14- Recordset: Đại diện cho một tập các Record được chọn query thông quađối tượng Command.
Đối tượng Connection chứa một tập các đối tượng con gọi là các đối tượngErrors đối tượng này giữ lại bất kỳ một thông tin lỗi nào có liên quan đến kết nối.Đối tương Command có một tập các đối tượng con là Paramenters để giữ bất cứtham số nào có thể thay thế cho query Recordset cũng có một tập các đối tượngcon Properties để lưu các thông tin chi tiết về đối tượng
I.3.2 Các thuộc tính đặc biệt của ADO
Mô hình ADO có một số thuộc tính mà các mô hinh cơ sở dữ liệu khác nhưDAO và RDO không có Các thuộc tính này điều khiển cách thức tạo ra dataset vàquyền hạn truy cập trong một kết nối dữ liệu Có bảy thuộc tính như sau:
- Connection string (Chuỗi kết nối)
- Command Text (Văn bản câu lệnh)
- Command Type (Kiểu câu lệnh)
- Cursor location (Định vị con trỏ)
- Cursor Type (Kiểu con trỏ)
- Look type (kiểu con trỏ)
- Mode type (Kiểu chế độ làm việc)
Ví dụ: Để tạo kết nối đến cơ sở dữ liệu SQL Server vơi tên cơ sở dữ liệu là:BENHNHAN ta làm như sau:
Public Sub OpenConnection()
' Tạo kết nối đến nguồn dữ liệu
Set cn = New ADODB.Connection
cn.Provider = "SQLOLEDB.1;"
ConnectionCommandParameterRecorset
FieldsError
Sơ đồ mô hình ActiveX Data Object
Trang 15cn.ConnectionString = " Integrated Security=SSPI;Persist SecurityInfo=False;Initial Catalog=BENHNHAN"
cn.Open
End Sub
Chương II: ĐĂC TẢ BÀI TOÁN
Bệnh viện đa khoa tỉnh Khánh Hoà cần quản lý bệnh nhân trên hệ thốngmạng máy tính của bệnh viện Sau khi khảo sát hiện trạng chúng tôi đã có đượcmột số thông tin cần lưu ý sau:
Quản lý nhân viên tronh bệnh viện
Mỗi nhân viên của bệnh viện được quản lý các thông tin sau: Họ, Tên, giớitính, ngày sinh, nơi sinh, địa chỉ, trình độ chuyên môn, đơn vị công tác, chức vụ
Trong đó quản lý:
- Địa chỉ quản lý: Số nhà, Xã (Phường), Huyện (Quận), Tỉnh (Thành phố)
Quản lý bệnh nhân (Đối tượng chính cần quản lí)
Khi bệnh nhận đến bệnh viện khám lần đầu tiên, bệnh viện lưu nhữngthông tin sau:Họ, Tên, giới tính, ngày sinh, địa chỉ, đối tượng
Bệnh nhân được chia làm hai loại: Loại có bảo hiểm y tế và không có bảohiểm y tế Nếu bệnh nhân có bảo hiểm y tế thì quản lý: Số thẻ bảo hiểm y tế, thờigian hiệu lực, phần trăm bảo hiểm, nơi khám bệnh ban đầu Nếu bệnh nhân có thẻbảo hiểm y tế là công nhân viên của một tổ chức, cơ quan nào đó thì quản lýthêm: Tên, địa chỉ, điện thoại, fax của cơ quan công tác
Địa chỉ bệnh nhân và cơ quan chỉ quản lý: Số nhà(thôn, âp), Xã (Phường),Huyện (Quận), Tỉnh (Thành Phố)
Quy trình khám chũa bệnh:
Bệnh nhân đến viện để khám chữa bệnh (vì đây là bệnh viên đa khoa) nêncó các trường hợp sau:
- Bệnh nhân đến để khám chữa các bệnh thông thường
- Bệnh nhân đang ở trong tình trạng cần cấp cứu đặc biệt (các thủ tụcnhập viện được tiến hành sau)
- Bệnh nhân la sản phụ (được đưa trực tiếp đến khoa sản)
Nhìn chung bệnh nhân đến bệnh viện để khám chữa bệnh theo quy trìnhsau:
Bước 1: Bệnh nhân đến nơi tiếp nhận bệnh nhân (nơi cấp sổ) để xác lập
việc khám bệnh và được chỉ định một vị trí khám bệnh
Bước 2: Bệnh nhân được một bác sĩ khám bệnh.
Trang 16Bước 3: Sau khi khám bệnh xong bệnh nhân thuộc một trong hai loại: Điều
trị tại nhà hay nhập viện
Bước 3.1: Nếu bệnh nhân điều trị tại nhà thì bác sĩ cho một toa thuốc trên
đó ghi đầy đủ tên thuốc, số lượng và cách dùng Nếu bệnh nhân có thẻ bảo hiểm ytế thì đến nơi cấp thuốc bảo hiểm y tế để nhận thuốc và trả một phần giá thuốctheo quy định phần trăm trên thẻ bảo hiểm Ngược lai thì bệnh nhân phải trả tất cảcác chi phí khám bệnh và tự mua thuốc
Bước 3.2: Nếu bệnh nhân phải nhập viện thì bác sĩ khám bệnh cho một
lệnh nhập viện trên đó có ghi đầy đủ thông tin về bệnh nhân, căn bệnh dự đoán vàđưa đến khoa điều trị
Bước 4: Tại khoa điều trị bệnh nhân xẽ được chuẩn đoán và lập một bệnh
án chi tiết Trên bệnh án ghi đầy đủ thông tin về bệnh nhân va căn bệnh mà bệnhnhân mắc phải Quá trình điều trị bệnh nhân được ghi đầy đủ trên bệnh án Trongmột khoảng thời gian quy định tuỳ theo bệnh nhân, bệnh nhân được một bác sĩkhám, cho một toa thuốc Trên toa thuốc ghi đầy đủ số lượng và cách dùng
Trong quá trình điều trị bệnh nhân có thể dùng một số dịch vụ khám chữabệnh như: Xét nghiệm, X_qang, siêu âm, … Việc sử dụng này cũng theo chỉ địnhcủa bác sĩ khám chữa bệnh Mỗi dịch vụ co giá riêng
Khi bệnh nhân điều trị có thể lựa chọn loại phòng nằm điều trị với giá dịchvụ riệng cho mỗi phòng
Bước 5: Thanh toán viện phí: Trong quá trình điều trị cứ 3 ngày bệnh viện
yêu cầu bệnh nhân thanh toán viện phí một lần Nếu bệnh nhân có thẻ bảo hiểm ytế thì chỉ đóng phần trăm viện phí theo bảo hiểm bao gồm tiền thuốc và các dịchvụ chữa trị hỗ trợ khám bệnh Riêng tiền phòng nếu có thẻ bảo hiểm y tế thì bệnhnhân cũng chỉ được bảo hiểm y tế thanh toán loại theo giá quy định của bảo hiểm
y tế về loại phòng đó nếu có Khin xuất viện bệnh nhân thanh toán toàn bộ việnphí còn lại
Trong quá trình điều trị, nếu có bệnh nhân trốn viện, không thanh toán việnphí, bệnh viện lưu lại tất cả các thông tin về bệnh nhân trốn viện Nếu sau 3 ngàyđiều trị mà bệnh nhân không đóng viện phí thì buộc bệnh viện phải trả bệnh nhânvề gia đình tự điều trị
Bước 6: Theo chu kỳ mỗi tháng, bệnh viện thanh toán viện phí với bảo
hiểm y tế
Trang 17Chương III: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
THÔNG TIN
III.1 MÔ HÌNH QUAN NIỆM DỮ LIỆU
DÙNG THUỐC
Số lượng dùng Liều dùng
CHUYÊN MÔN
Mã CM Tên CM
CHỨC VỤ
Mã ĐV Tên ĐV H-T
NV-ĐV
(1,n)
(1,1)
NV-CM (1,n)
(1,1)
NV-CV
(1,n) (1,1
VỊ TRÍ KB
Mã VTKB Tên VTKB
K-BỆNH
- Ngày KB Nội dung Chi phí
(1.n)
(1.n)
ĐỊA CHỈ
(1,1) (1.n)
BỆNH NHÂN
Mã BN Họ BN Tên BN Ngày sinh BN Giới tính Số nhà
X
(1.n)
ĐƠN THUỐC
Mã ĐT Ngày kê đơn (1,1)
BỆNH
Mã Bệnhõ Tên Bệnhõ
BỆNH ÁN
Mã BA Ngày vào Ngày ra
DÙNG DV
- Lần dùng
DỊCH VỤ
Mã DV Tênh DV
- Đơn giá
(1.n) (1.n)
(1.n)
NƠI ĐIỀU TRỊ
Mã NĐT Tên NĐT Đơn giá (1.1)
BN-TƯ
(1.1)
(1.n)
Trang 18III.2 MÔ HINH TỔ CHỨC DỮ LIỆU
TỈNH(Mã tỉnh, Tên tỉnh)
HUYỆN(Mã huyện, Tên huyện, Mã tỉnh)
XÃ(Mã xã, Tên xã, Mã huyện)
CƠ QUAN(Mã cơ quan, Tên cơ quan, Điện thoại cơ quan, Fax cơ quan)
CÁN BỘ(Mã bệnh nhân, Mã cơ quan)
BẢO H.Y.TẾ(Mã bệnh nhân, Số thẻ B.H.Y.T, Ngày bắt đầu, Ngày kết thúc, Phần
trăm)BỆNG NHÂN(Mã bệnh nhân, HọBN, Tên BN, Ngày sinh BN, Giới tính BN, Số
nhà BN, Mã xã)NHÂN VIÊN(Mã nhân viên, Họ NV, Tên NV, Ngày sinh, Giới tính, Số nhà,
Mã xã, Mã.Đ.Vị, , Mã.C.Môn, Mã.C.Vụ)ĐƠN VỊ KHOA(Mã ĐV, Tên ĐV)
CHUYÊN MÔN(Mã chuyên môn, Tên chuyên môn)
CHỨC VỤ( Mã chức vụ, Tên chức vụ)
VỊ TRÍ KHÁM BỆNH(Mã vị trí KB, Tên vị trí KB)
KHÁM BỆNH(Mã.N.V, Mã bệnh nhân, Mã vị trí, Mã đơn thuốc, Mã bệnh, Ngày
KB, Nội dung KB, Chi phi KB)ĐƠN THUỐC(Mã đơn thuốc, Ngày kê đơn, Mã vị trí, Mã NV, Mã BN, Mã bệnh)THUỐC(Mã thuốc, Tên thuốc, Đơn giá)
DUNG THUỐC(Mã thuốc, Mãđơn thuốc, Số lượng dùng, Liều dùng)
BỆNH (Mã bệnh, Tên bệnh)
NƠI DIỀU TRỊ(Mã nơi ĐT, Tên nơi ĐT, Đơn giá)
DỊCH VỤ(Mã dịch vụ, Tên dịch vụ, Đơn giá dịch vụ)
TẠM ỨNG VIỆN PHÍ(Mã phiếu T.Ư, Lần tạm ứng, Số tiền tạm ứng, Mã BN)Đối với bệnh án của bệnh nhân nếu sử dụng theo mô hình quan niệm dữ liệu thìxẽ phải sử dụng nhiều mã tổ hợp cho Table Bênh án nên để đơn giản trong xử lí cũng nhưgiảm việc sử dụng mã tổ hợp trong Table Dùng dịch vụ chúng tôi đã chọn phương phápthiết kế như sau:
BỆNH ÁN(Mã bệnh án, Ngày vào, Ngày ra, Mã bệnh nhân, Mã nhân viên, Mã
Bệnh, Mã Nơi Điều trị)DÙNG DỊCH VỤ(Mã bệnh án, Mã dịch vụ, Lần dùng dịch vụ)
Trang 19III.3 MÔ HÌNH TỔ CHỨC DỮ LIỆU
TỈNH(Mã tỉnh, Tên tỉnh)
TỈNH
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
HUYỆN(Mã huyện, Tên huyện, Má tỉnh)
HUYỆN
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
XÃ(Mã xã, Ten xã, Mã huyện)
Xã
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
CƠ QUAN(Mã cơ quan, Tên cơ quan, Điện thoại cơ quan, Fax cơ quan)
CƠ QUAN
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
CÁN BỘ(Mã bệnh nhân, Mã cơ quan)
CÁN BỘ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
BẢO H.Y.TẾ(Mã bệnh nhân, Số thẻ B.H.Y.T, Ngày bắt đầu, Ngày kết thúc, Phần
trăm)BẢO H.Y.TẾ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Mã bệnh nhân Text 5 Lookup(BỆNH NHÂN)
Số thẻ B.H.Y.T Text 14 Len()=14
Ngày bắt đầu Date Date()>
Ngày kết thúc Date Date()>
BỆNG NHÂN(Mã bệnh nhân, HọBN, Tên BN, Ngày sinh BN, Giới tính BN, Số
nhà BN, Mã xa)BỆNG NHÂN
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Trang 20Mã bệnh nhân Text 5 Len()=5
Họ bệnh nhân Text 20
Tên bệnh nhân Text 20
Giới tính Yes/No
Số nhà bệnh nhân Text 4
NHÂN VIÊN(Mã nhân viên, Họ NV, Tên NV, Ngày sinh, Giới tính, Số nhà, Mã
xã, Mã.Đ.Vị, Mã.C.Môn, Mã.C.Vụ)NHÂN VIÊN
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Họ tên nhân viên Text 30
Giới tính Yes/No
Mã chuyên môn Text 3 Lookup(CHUYÊN MÔN)
ĐƠN VỊ KHOA(Mã ĐV, Tên ĐV)
ĐƠN VỊ KHOA
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
CHUYÊN MÔN(Mã chuyên môn, Tên chuyên môn)
CHUYÊN MÔN
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Tên chuyên môn Text 30
CHỨC VỤ( Mã chức vụ, Tên chức vụ)
CHỨC VỤ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
VỊ TRÍ KHÁM BỆNH(Mã vị trí KB, Tên vị trí KB)
VỊ TRÍ KHÁM BỆNH
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Trang 21Mã bệnh Text 8 Len()=3
KHÁM BỆNH(Mã.N.V, Mã bệnh nhân, Mã đơn thuốc, Mã bệnh, Mã vị trí, Ngàykhám bệnh, Nội dung KB, Chi phi KB)
KHÁM BỆNH
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Mã nhân viên Text 5 Lookup(NHÂN VIÊN)Mã bệnh nhân Text 5 Lookup(BỆNH NHÂN)
Ngày khám bệnh Date >Date()
Nội dung khám bệnh Text 50
Chi phí khám bệnh Number Long >0
THUỐC(Mã thuốc, Tên thuốc)
THUỐC
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
DUNG THUỐC(Mã thuốc, Mãđơn thuốc, Số lượng dùng, Liều dùng)
DUNG THUỐC
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Số lượng dùng Number Integer >0
ĐƠN THUỐC(Mã đơn thuốc, Ngày kê đơn, Mã vị trí, Mã NV, Mã BN
Mã bệnh)Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Mã bệnh nhân Text 8 Lookup(BÊNH NHÂN)
Mã nhân viên Text 5 Lookup(NHÂN VIÊN)
BỆNH ÁN(Mã bệnh án, Ngày vào, Ngày ra, Mã bệnh nhân, Mã nhân viên, Mã
Bệnh, Mã Nơi Điều trị)BỆNH ÁN
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Mã nơi điều trị Text 3 Lookup(NƠI ĐT)
Trang 22Mã bệnh Text 3 Lookup(DỊCH VỤ)Mã bệnh nhân Text 5 Lookup(BỆNH NHÂN)Mã nhân viên Text 5 Lookup(NHÂN VIÊN)
NƠI DIỀU TRỊ(Mã nơi ĐT, Tên nơi ĐT)
NƠI DIỀU TRỊ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Tên nơi điều trị Text 30
DỊCH VỤ(Mã dịch vụ, Tên dịch vụ)
DỊCH VỤ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
DÙNG DỊCH VỤ(Mã bệnh án, Mã dịch vụ, Lần dùng dịch vụ)
DÙNG DỊCH VỤ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
TẠM ỨNG VIỆN PHÍ(Mã phiếu T.Ư, Lần tạm ứng, Số tiền tạm ứng, Mã BN)TẠM ỨNG VIỆN PHÍ
Tên thuộc tính Kiểu dữ liệu Kích thước Ràng buộc
Mã phiếu tạm ứng Text 8 Lookup(BỆNH ÁN)Lần tạm ứng Int
Mã bệnh nhân Text 10 Lookup(BỆNH NHÂN)
III.4 MÔ HÌNH THÔNG LƯỢNG THÔNG TIN
BỆNH NHÂN
PHÒNG CẤP SỐ
PHÒN
G KHÁM BỆNH
PHÒNG CẤP THUỐC
PHÒN
G TÀI VỤ
KHOA ĐIỀU TRỊ
(1)
(2)
(3)(4)
Trang 23(1) Yêu cầu khám chữa bệnh
(2) Vị trí khám bệnh (Số được cập)
(3) Quá trình khám bệnh
(4) Kết quả khám bệnh
(5) Danh sách bệnh nhân nhập viện
(6) Danh sách bệnh nhân được cấp thuốc
(7) Lệnh nhập viện
(8) Các chi phí điều trị
(9) Xác nhận thanh toán viện phí
(10) Danh sách bệnh nhân đã thanh toán
(11) Giấy xuất viện
III.5 MÔ HÌNH QUAN NIỆM XỬ LÍ
Mô hình quan niệm:
Danh sách công việc:
STT Danh sách các công việc của bài toán
1 Tiếp nhận yêu cầu khám chữa bệnh của bệnh nhân
2 Cấp số cho bệnh nhân đến phòng khám bệnh
3 Chỉ định bác sĩ khám bệnh cho bệnh nhân theo số đã cấp
4 Kết quả khám bệnh cho bệnh nhân
5 Ghi toa thuốc cho bệnh nhân
6 Cấp thuốc cho bệnh nhân
7 Thu phí khám bệnh
8 Cho giấy nhập viện
9 Tiếp nhận bệnh nhân đến điều trị
10 Lập bệnh án chi tiết cho bệnh nhân
11 Lập toa thuốc điều trị
12 Cung cấp các dịch vụ hỗ trợ khám chữa bệnh
13 Thu viện phí
Trang 2414 Lập danh sách bệnh nhân trốn viện
15 Xem xét các trường hợp bệnh nhân không thanh toán viện phí
16 Cấp giấi xuất viện cho bệnh nhân