Tải bản đầy đủ (.pdf) (47 trang)

phân tích và thiết kế hệ thống thông tin quản lý bệnh nhân tại bệnh viện đa khoa tỉnh Khánh Hòa

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.04 MB, 47 trang )


THệ VIEN ẹIEN Tệ TRệẽC TUYEN

Lời nói đầu

OBO
OK S
.CO
M

Ngày này cùng với sự phát triển vợt bậc của khoa học kỹ thuật thì công
nghệ 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
công nghệ thông tin là một công cụ hỗ trợ rất đắc lực trong công tác quản lý.
Chúng ta dễ dàng thấy đợc việc đa tin học vào trong quản lý kinh doanh là
một trong những ứng dụng quan trọng trong rất nhiều ứng dụng cơ sở dữ liệu.
Nhờ vào công tác tin học hóa 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ại và phát triển một
cách nhanh chóng.
Bệnh viện đa khoa tỉnh Khánh Hòa là một trong những trung tâm khám
chữa bệnh lớn nhất tỉnh Khánh Hòa. Do đó nhu cầu ứng dụng cơ sở dữ liệu
trong việc quản lý bệnh nhân là hết sức thiết thực. Vì vậy em chọn đề tài phân
tích và thiết kế hệ thống thông tin quản lý bệnh nhân tại bệnh viện đa khoa tỉnh
Khánh Hòa làm đề tài thực tập tốt nghiệp.
Hệ thống đợc phân tích và thiết kế theo phơng pháp có cấu trúc và đợc
cài đặt trên môi trờng Visual Basic 6.0 và đợc thiết kế dữ liệu dựa trên ngôn
ngữ SQL Server 2000, các chơng tiếp theo sẽ nói rõ hơn về vấn đề này
Mặc dù có nhiều cố gắng nhng vốn kiến thức cha sâu nên không thể tránh
khỏi những thiếu sót. Rất mong đợc sự góp ý của quý thầy cô,anh chị cùng
các bạn để báo cáo đợc hoàn thiện hơn.



KIL

Tôi xin chân thành cảm ơn phòng Kế Hoạch Tổng Hợp bệnh viện đa khoa
tỉnh Khánh Hòa, quý thầy cô và các bạn đã tận tình giúp đỡ tôi hoàn thành báo
cáo này đặc biệt là cô Nguyễn Kim Anh ngời trực tiếp hớng dẫn em trong
suốt thời gian thực tập vừa qua.
Sinh viên thực hiện:
Bùi Văn Mừng



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

Chơng I: Giới Thiệu Nội Dung Đề Tài

KIL
OBO
OKS
.CO
M

I. Giới thiệu hệ thống
1. Nhiệm vụ của hệ thống quản lý bệnh viện
Hệ thống quản lý bệnh nhân là một hệ thống giúp cho chúng ta quản lý
bệnh nhân đã và đang điều trị tại bệnh viện, cũng nh trong quá trình khám
chữa bệnh của bệnh nhân tại bệnh viện. Quản lý việc thanh toán tạm ứng của
bệnh nhân với bệnh viện cũng nh của bệnh viện với bảo hiểm y tế, quản lý
lợng bệnh nhân đến điều trị tại bệnh viện trong những khoảng thời gian xác
định. Đồng thời chúng ta đi thống kê số lợng Bệnh nhân mắc phải một số căn

bệnh nào đó trong một thời gian trong năm để đa ra phơng pháp điều trị và
đề phòng... Đồng thời chúng ta còn thống kê đợc một số căn bệnh mà Bộ Y
Tế và nhà nớc quan tâm.
2 Tổ chức của bệnh viện đa khoa tỉnh Khánh Hòa
a. Quản lý một số thông tin về nhân viên làm việc tại bệnh viện
- Quản lý họ tên của nhân viên (chủ yếu là Y, Bác sĩ).
- Quản lý địa chỉ của nhân viên.
- Quản lý số điện thoại của nhân viên (nếu có).
- Và quản lý một số thông tin khác của nhân viên để phục vụ cho
việc quản lý bệnh nhân cũng nh quá trình khám chữa bệnh của bệnh
nhân trong bệnh viện đợc dễ dàng hơn nh: khoa, chuyên môn, chức
vụ.
b. Quản lý dữ liệu về bệnh nhân điều trị tại bệnh viện
Khi một bệnh nhân đến bệnh viện để khám chữa bệnh ta cần lu trữ
những thông tin sau:
- Quản lý họ tên bệnh nhân (họ và tên bệnh nhân quản lý riêng).
- Quản lý địa chỉ bệnh nhân(quản lý địa chỉ tới mức xã).
- Quản lý bảo hiểm y tế của bệnh nhân. (nếu bệnh nhân có thẻ bảo
hiểm y tế thì quản lý số thẻ bảo hiểm y tế và nếu bệnh nhân đó đang
làm việc tại một cơ quan nào đó thì Quản lý thêm cơ quan mà bệnh
nhân đó đang làm việc)
- Trong quá trình khám chữa bệnh tại bệnh viện bệnh nhân có yêu
cầu dùng thêm một số dịch vụ, chúng ta quản lý thêm trong quá trình đó
bệnh nhân đã dùng những dịch vụ nào.
- Quản lý hồ sơ chứng từ về các khoản tiền mà bệnh nhân phải đóng
cho bệnh viện cũng nh đã đóng cho bệnh viện (Tạm ứng).
c. Quản lý quá trình khám chữa bệnh của bệnh nhân tại bệnh viện.
Bệnh nhân đến nơi tiếp nhận bệnh nhân (phòng cấp số) để đăng ký
khám chữa bệnh và đợc chỉ định một vị trí khám bệnh.
Bệnh nhân đợc bác sĩ khám bệnh

Sau khi khám bệnh, bệnh nhân thuộc một trong hai loại: Điều trị
tại nhà hoặc điều trị tại bệnh viện.



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M

+ Nếu bệnh nhân điều trị tại nhà thì bác sĩ cho một đơn thuốc
trong đó ghi đầy đủ tên thuốc, số lợng và cách dùng cũng nh căn
bệnh mà bác sĩ dự đoán.
+ Nếu bệnh nhân phải nhập viện thì bác sĩ cho một giấy nhập
viện, trên đó ghi đầy đủ thông tin về bệnh nhân và căn bệnh dự đoán
sau đó bệnh nhân đợc đa đến khoa điều trị.
Tại khoa điều trị bệnh nhân đợc bác sĩ khám lại và cho một đơn
thuốc trên đơn thuốc có ghi đầy đủ tên thuốc số lợng và cách dùng.
Theo định kỳ bác sĩ sẽ khám bệnh lại cho bệnh nhân (tùy theo từng loại
bệnh nhân). Trong quá trình điều trị tại bệnh viện bác sĩ sẽ lập một bệnh
án của bệnh nhân trong đó ghi đầy đủ thông tin về bệnh nhân, căn bệnh
mà bệnh nhân mắc phải cũng nh diễn biến quá trình điều trị tại bệnh
viện.
Trong quá trình điều trị bệnh nhân có thể yêu cầu dùng thêm một
số dịch vụ nh: X_quang, Siêu âm... việc sử dụng này cũng theo sự chỉ
định của bác sĩ, mỗi loại dịch vụ có một giá riêng.
Trong quá trình điều trị tại bệnh viện cứ ba ngày bệnh viện yêu

cầu bệnh nhân đóng tạm ứng viện phí một lần. Nếu bệnh nhân có thẻ
bảo hiểm y tế thì bệnh nhân chỉ phải đóng phần trăm viện phí theo quy
định của bảo hiểm y tế. Trong quá trình điều trị nếu bệnh nhân không
thanh toán viện phí mà tự ý xuất viện thì bệnh viện sẽ lu lại toàn bộ
thông tin về bệnh nhân đó.
Đối với bệnh nhân có thẻ bảo hiểm y tế thì vẫn phải nộp một phần
viện phí theo phần trăm ghi trên bảo hiểm.
Theo chu kỳ hàng tháng bệnh viện thanh toán viện phí của bệnh
nhân có bảo hiểm y tế với bảo hiểm y tế.
3. Những yêu cầu cần giải quyết
- Bệnh nhân có những yêu cầu sau:
+ Tổng chi phí trong thời gian điều trị tại bệnh viện.
+ Tổng số tiền đã đóng.
+ Tổng số tiền mà bệnh nhân phải đóng.
+ Cần biết chi tiết các khoản phải đóng.
- Các bác sĩ cần biết những thông tin sau:
+ Cần biết rõ diễn biến bệnh của bệnh nhân mà mình đang điều trị.
+ Cần tìm kiếm một số trờng hợp tơng tự để tìm lấy một số giải pháp
chữa trị hữu hiệu nhất.
+ Cần thống kê bệnh nhân theo từng mùa hoặc theo từng bệnh để đa ra
một số phơng án hoạt động dự phòng một số bệnh theo từng mùa hoặc
theo từng khu vực...
- Ngời nhà bệnh nhân cần biết
+ Biết đợc diễn biến chính xác bệnh của ngời nhà mình (có một số
trờng hợp bác sĩ không thể nói trực tiếp với bệnh nhân đợc nên phải nói
với ngời nhà bệnh nhân)
+ Có thể biết quá trình điều trị của ngời nhà mình cũng nh biết rõ đợc
ngời nhà mình đang đợc điều trị nh thế nào.




THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Đối với nhân viên tài chính của bệnh viện
+ Tổng số tiền tạm ứng mà bệnh nhân đã đóng và cha đóng (còn lại là bao
nhiêu).
+ Tổng số bệnh nhân điều trị trong tháng có bảo hiểm y tế, và tổng chi phí
của những bệnh nhân này để thanh toán với bảo hiểm y tế.
4. Hớng phát triển của hệ thống quản lý bệnh nhân hiện nay.
Ngày nay với sự ra đời và phát triển nhanh chóng của máy tính đã làm thay
đổi phong cách làm việc của hầu hết các cơ quan t nhân cũng nh nhà nớc.
Trớc kia mọi thủ tục cũng nh việc lu trữ đều dựa trên giấy tờ do đó rất khó
khăn trong việc tìm kiếm một hồ sơ về một ngời, cũng nh tìm kiếm một vấn
đề nào đó trong rất nhiều hồ sơ lu trữ, cha kể đến việc thống kê theo một
tiêu chí nào đó... Ngày nay với sự trợ giúp của máy tính chúng ta có thể thực
hiện các công việc đó một cách dễ dàng, nhanh chóng và chính xác. Với hệ
thống quản Lý bệnh nhân chúng ta có thể thực hiện việc tìm kiếm một bệnh
nhân, cũng nh việc thống kê bệnh nhân theo những tiêu chí mà ban lãnh đạo
bệnh viện đa ra một cách nhanh chóng và hiệu quả...

KIL
OBO
OKS
.CO
M

-

II.
Hớng thực thi đề tài
- Đối tợng sử dụng: Đối tơng sử dụng hệ thống chủ yếu la nhân viên trong

bệnh viện (chủ yếu là những ngời dùng chuyên nghiệp, có những hiểu biết
nhất định về chuyên môn cũng nh tin học) nên việc thiết kế một hệ thống
sử dụng chuyên nghiệp là việc cần thiết.
- Vấn đề phân tích bài toán: Trong đề tài này em phân tích theo phơng pháp
có cấu trúc, vì các lẽ nh sau:
+ Phơng pháp có cấu trúc, trải qua thời gian đã chứng tỏ đợc tính kinh
điển của nó.
+ Phơng pháp có cấu trúc là phơng pháp dung dị, không cầu kỳ nh một
số phơng pháp khác, dễ áp dụng, nhng lại rất hữu hiệu. Ngày nay nó
cha lạc hậu mà vẫn còn phát huy tác dụng.
- Vấn đề lựa chọn ngôn ngữ cũng là một vấn đề hết sức quan trọng. Hiện
nay có rất nhiều hệ quản trị cơ sở dữ liệu nh Oracle, Access, Fospro, SQL
Server, ... Song để phù hợp với cách quản lý tại bệnh viện hiện nay và để
cho hệ thống phát triển sau này (có thể đa lên mạng Internet cũng nh
mạng liên bệnh viện ...). Em đã lựa chọn ngôn ngữ SQL Server 2000 làm
ngôn ngữ thiết kế dữ liệu và ngôn ngữ Visual Basic 6.0 làm ngôn ngữ thiết
kế giao diện. Đặc điểm về hai ngôn ngữ này sẽ đợc trình bày kỹ ở chơng
giới thiệu ngôn ngữ (các chơng tiếp theo). Tuy nhiên trong đề tài này em
cài đặt hệ thông trên máy đơn.



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

Chơng II. Giới thiệu ngôn ngữ cài
đặt hệ thống

KIL
OBO
OKS

.CO
M

I. Giới thiệu chung về hệ quản trị cơ sở dữ liệu và SQL
Server 2000
I.1 Hệ quản trị cơ sở dữ liệu là gì?
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ệ (RDBMS) hay
còn đợc gọi là Relation 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ác hàng thông tin. Sau đó các bảng này lại liên hệ với nhau bởi
Database Engine khi có yêu cầu. RDBMS là một trong những mô hình cơ sở
dữ liệu thông dụng nhấ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ác bả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át
triể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 khóa 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, cơ sở dữ
liệu mạng, ...
Những thành phần chính trong SQL Server 2000
Hệ Thống
Diễn Tả
SQL

Server Đây là phần chính của hệ thống, là trung tâm
2000
điều hành những phần thực thi khác. Với
Desktop Engine bạn sẽ thấy các dịch vụ
trong hệ thống nh: SQL Server Profiler, ...
và một số công cụ khác.
Full
Sarch

Text

Đây là phần tự chọn trong lúc cài đặt, nếu
bạ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 Sarck cung cấp chức năng tìm
kiếm (Word) rất mạnh, nếu sử dụng Iternet
để tìm kiếm thì đây là một giải pháp tuyệt
vời. Nếu bạn muốn tìm kiếm một chuỗi con
trong một văn bản lớn thì đây là công cụ
thích hợp cho công việc đó.

ấn Bản
Desktop
Engine
Personal
Standard
Developer
Enterprise
Personal

(Except
Win95)
Standard
Developer
Enterprise



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

Analusis
Services

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 đặt câu hỏi
chuỗi English sau đó đợc dịch ra Query mà
có thể thực thi trên SQL Server.
Phần này không bao gồm mặc định trong
phần cài đặt, chúng là dạng sản phẩm tự
chọn, là công cụ phân tích OLAP (Online
Analysis Processing), sử dụng cho cơ sở dữ
liệu lớn.
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ức năng này cho các hệ thống Server từ xa
hay trong Network, nhằm để làm giảm trao
đổi dữ liệu giữa các SQL Server với nhau.

KIL

OBO
OKS
.CO
M

English Query

Replication

Data
Transformation
Servise

Data Transformation Servise (DTS) đợc mở
rộng trong phiên bản SQL Server 2000, bao
gồm những chức năng trao đổi dữ liệu giữa
các cơ sở dữ liệu, và giao tiếp dữ liệu giữa
các cơ sở dữ liệu khác nhau, đây là những
giải pháp lập trình trên Visual Basic.

Personal
Standard
Developer
Enterprise
Personal
Standard
Developer
Enterprise
Desktop
Engine

Personal
Standard
Developer
Enterprise
Desktop
Engine
Personal
Standard
Developer
Enterprise

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 .
- Tập tin log: Tập tin lu trữ những chuyển tát 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ảng ảo) số liệu dựa trên bảng.
- Stored Procedure: Các thủ tục lu trữ 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.
2. Các đố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 SQL
Server, tuy nhiên những đối tợng con của cơ sở dữ liệu mới là thành phần
chính của cơ sở dữ liệu.




THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M

Bản thân SQL Server là một hệ quản trị cơ sở dữ liệu, chúng bao gồm các
đối tợng nh 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 Server bạ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 SQL Server dựa vào những tài khoản ngời dùng
riêng biệt và ứng với quyền truy nhập nhất định. Cài đặt cơ sở dữ liệu 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ệ hệ thống), chúng kiểm soát tất cả hoạt động của hệ quản trị cơ sở dữ liệu
SQL Server.
Ví dụ: Khi ngời dùng cơ sở dữ liệu mới trong SQL Server, thêm hoặc
xóa một Procedure thì tất cả thông tin này đều đợc lu trữ trong cơ sở
dữ liệu Master của hệ thống.
- 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ột cơ sở dữ liệu thì SQL Server 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 tao mới cơ sở dữ liệu cho ngời dùng khi có yêu cầu, bạn
không đợc xóa cơ sở dữ liệu này.
Khi một cơ sở dữ liệu đợc tạo ra thì ít nhất cơ sở dữ liệu mới
này cũng bằng và giống nh cơ sở dữ liệu model.
- Msdb: Nh đã nêu, chúng ta có hai cơ sở dữ liệu hệ thống master và model,
nếu xóa một trong hai cơ sở dữ liệu này thì hệ thống SQL Server sẽ bị lỗi,
nhng với cơ sở dữ liệu Msdb thì khác. Msdb chính là SQL Agent lu trữ tất cả
các tác vụ xảy ra trong SQL Server.
- 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 tham khả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úng cò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.
- 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.
- 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 cho các lập trình viên Visual Basic hay
Assces dùng truy cập dữ liệu SQL Server. Cơ sở dữ liệu này đợc cài đặt nh
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ày bạn
có thể sử dụng hai file kịch bản script mang tên inspub.sql và insnwnd.sql.
- Tập tin Log: Tập tin chứa đựng những hoạt động, hay tất 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ểu sự cố xảy
ra với cơ sở dữ liệu, ngời ta chỉ cần tham khảo tập tin log sẽ biết đợc nguyên
nhân.



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL

OBO
OKS
.CO
M

3. Giới thiệu một số đối tợng cơ sở dữ liệu SQL Server
- Bảng - Table
Trong cơ sở dữ liệu, bảng (Table) là phần chính của chúng. Do bảng là đối
tợng lu trữ dữ liệu thực, khi cần giao tiếp với cơ sở dữ liệu khác bảng là đối
tợng căn bản nhất trong bất kỳ cơ sở dữ liệu nào, chúng đợc coi nh một
miề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à
Column name) ứ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 hoặc từ chối tùy 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 do hệ 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 đó là khóa 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 lu trong trờng này hay không
+ Default: Giá trị mặc nhiên cho trờng
+ Identity: Nếu ta sử dụng một trờng có giá trị tự động nh
autonumber trong assces, trờng này Not Null và Identity: Yes(No)
+ Identity Seed: Nếu trờng (cột) này là Identity, cần số bắt đầu là 1
hoặc 2 ...
+ Identity Increament: Số nhảy cho mỗi lần tăng
- Chỉ Mục - Indexs
Đối tợng chỉ mục (Indexs) chỉ tồn tại trong bảng hay khung nhìn (view).

Chỉ mục có ảnh hởng đến tốc độ truy nhập số liệu, nhất là khi cần tìm kiếm
thông tin trên bảng. Chỉ mục giúp tăng tốc cho việc tìm kiếm.
+ Clustered: ứng với loại chỉ mục này có một bảng có thể có nhiều chỉ 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ực hiệ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, xóa 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
đó...
- Lợc đồ quan hệ - Diagram
Khi xây dựng cơ sở dữ liệu cho ứng dụng hay thơng mại điện tử,
thờng đều phải dựa trên trình phân tích và thiết kế hệ thống. Sau những bớc
phân tích và thiết kế, chúng ta sẽ thiết lập quan hệ dữ liệu giữa các thực thể
ERD (Entity relationship diagram).
- Khung nhìn - View



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M

View là khung nhìn (hay bảng ảo) của bảng. Cũng giống nh bảng
nhng view không thể chứa dữ liệu, bản thân view có thể tạo nên trờng mới
dựa vào những phép toán biểu thức của SQL Server.

- Thủ tục lu trữ - Stored Procedure
Stored Procedure còn gọi là Spocs, tiếp tục phát triển nh một phần SQL
trên cơ sở dữ liệu. Stored Procedure cho phép khai báo biến, nhận tham số
cũng nh thực thi các phát biểu có điều khiển. Stored Procedure có các u
điểm lớn nh 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ệu hiệ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ể gọi Stored Procedure theo cách gọi thủ tục hay hàm trong
ngôn ngữ lập trình truyền thống, đồng thời sử dụng lại khi yêu cầu.
- Sử dụng kiểu dữ liệu Cursor (Cursor type)
Khi 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
Cursor.
4. 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 có 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
trong khi 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ểu
dữ liệu cần thiết, nh: Kiểu số nguyên (Binary, Int, TinyInt,...), kiểu tiền tệ
(Money, SmallMoney, ...), kiểu chuỗi (Char, nchar, Varchar, Text, ...) và nhiều
kiểu dữ liệu khác.
Ngoài ra SQL Server cong 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 sự chuyển đổi từ dữ liệu kiểu Float hay Real, ...
5. Một số phát biểu cơ bản của T-SQL
T-SQL còn gọi là Transact-SQL (SQL) bao gồm các phát biểu nh SELECT,
INSERT, UPDETE, DELETE
- 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ả các phát biểu nằm trong cặp dấu ngoặc [] thì có thể có hoặc
có thể không có.
ORDER BY dùng để hiển thị kết quả truy vấn theo tiêu chuẩn của ngời
dùng. Nếu thiếu tham số này thì việc sắp xếp sẽ theo thứ tự ALPHABET.
Ngoà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 một số biểu thức tính toán, ...



THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Lệnh INSERT
Để thêm dữ liệu vào bảng (Table) ta dùng câu lệnh truy vấn INSERT cú
pháp nh sau:
INSERT INTO <Tên bảng> (danh sách cột)
VALUES (Danh sách giá trị)
- Lện UPDATE
Để sửa dữ liệu trong một bảng đã có sắn ta dùng câu truy vấn UPDATE cú
pháp nh sau:
UPDATE FROM <Tên bảng>
SET <Têncột>=<Giá trị>
WHERE <Điều kiện>
- Lệnh DELETE
Để xóa 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>
Ngoài ra trong SQL Server còn có những phát biểu cho phép kết nối nhiều
bảng với nhau (JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN, CROSS
JOIN)
6.

KIL
OBO
OKS
.CO
M

-

Khái niệm về đối tợng trong SQL và cách tạo đối tợng trong SQL
Server 2000
a. Tạo cơ sở dữ liệu (CREATE DATABASE)
Để tạo một cơ sở dữ liệu trong SQL Server ta dùng cú pháp nh sau:
CREATE DATABASE <Database_Name>
[ON[PRIMARY](
[Name=<Logical File name>,]
File Name=<FileName>
[,SIZE=[,MAXSIZE=FILEGROWTH=)]
(LOG ON
[Name=< Logical File name>,]
FileName=<File Name>
[,SIZE=<Size in Megabyte or Kylobyte>]

[,MAXSIZE=<Size in Megabyte or Kilobyte>]
FILEGROWTH=<NO of Kylobyte | Percentage>]
)]
[COLLATE <Collation>]



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M

[For Load | For Attach]
Trong đó:
- ON: Định nghĩa nơi chứa dữ liệu và không gian chứa tập tin log
- Name: Tên tập tin cơ sở dữ liệu trên đĩa cứng, lu ý 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.
- SIZE: Cho biết dung lợng cơ sở dữ liệu khi tạo chúng. Thông
thờng là 1 MB
- 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.

Ngoài việc tạo cơ sở dữ liệu bằng mã lệnh trong SQL Server còn cho
phép tạo cơ sở dữ liệu bằng giao diện đồ họa. Để tạo cơ sở dữ liệu ta dùng trình
SQL Server Enterprise Manager. Việc thực hiện bằng giao diện đồ họa có vẻ
đơn gian và hiệu quả hơn.
b. 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
trong SQL Server. Cú pháp đầy đủ để tạo bảng nh sau:
CREATE TABLE [Database_name.[owner].table_name
(<column name><data type>
[[DEFAULT <constant expression>]
[[IDENTITY (seed, increament) [NOT FOR REPLICATION]]]]
[ROWGUIDCOL]
[NULL | NOT NULL]
[<column constraint>]
[column_name as computed_columns_expression
.....
)
ON {<filegroup>> | DEFAULT}
- 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 chúng ta nên đặt tên ngắn gọn dễ 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 đề là chọn dữ
liệu nào cho phù hợp với dữ liệu mà ngời dùng sẽ nhập vào.
- Giá trị mặc nhiên (Default): Gán giá trị mặc nhiên cho những cột
không có giá trị.



THệ VIEN ẹIEN Tệ TRệẽC TUYEN


KIL
OBO
OKS
.CO
M

- 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.
- NULL | NOT NULL: Là trạng thái của một cột có cho phép 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 tra dữ liệu nhập
vào bảng theo một quy luật đã định sẵn.
Song cũng có thể tạo bảng bằng giao diện đồ họa nh tạo cơ sở dữ liệu.
Trong khi xây dựng bảng dữ liệu cần chú ý đến các trờng khóa
c. 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 cũng nh giao diện đồ họa
View cho phép kết nối nhiều bảng với nhau để hiển thi thông tin.
d. Tạo thủ tục lu trữ (Stored Procedure hay sp)
Stored Procedure là một phần cực kỳ quan trọng trong cơ sở dữ liệu
SQL Server. Nếu biết SQL Server mà không biết Stored Procedure là một thiếu
sót rất lớn. Cú pháp để tạo một Stored Procedure nh sau:
CREATE PROCEDURE | PRO<Procedure name>
[<Paramenters name><data type> [VARYING]
[=<default value>][OUT PUT],
[<Parameters><data type> [VARYING]

[=<default value>][OUT PUT][,
............
............
[WITH
RECOMPILE | ENCRIPTION | RECOMPILE,
ENCRIPTION]
[FOR REPLICATION]
AS
<cade>
GO
Đó là cú pháp đầy đủ để tạo một Stored Procedure song ta có thể tạo Stored
Procedure bằng giao diện đồ họa
Ví dụ tạo một Stored Procedure đơn giản
USE dbBENHNHAN
GO
Create proc Sp_NhapXa
@MaXa nchar(9),
@TenXa char(30),



THệ VIEN ẹIEN Tệ TRệẽC TUYEN
@MaHuyen nchar(6)
AS

KIL
OBO
OKS
.CO
M


Insert Into tblXa
(
MaXa, TenXa,MaHuyen
)
Values
(
@MaXa,@TenXa,@MaHuyen
)
---------------------------------------------------

GO
Trên đây ta trình bày một Stored Procedure dùng để nhập một xã vào
bảng tblXa.
e. Tạo hàm (Function)
Tơng tự nh Stored Procedure hàm cũng có thể tạo bằng giao diện đề họa
cũng nh mã lệnh, song với hàm giá trị trả về là đa dạng hơn và giá trị trả về
này có thể là một bảng.
Ví dụ tạo hàm thống kê bệnh nhân theo tỉnh, hàm này trả về một bảng chứa
thông tin về các bệnh nhân trong tỉnh
CREATE FUNCTION udf_ThongKeBenhNhanTheoTinh
(@TenTinh Char(30))
RETURNS Table
------------------------------------AS
--------------------Return
Select *
From tblBenhNhan
Where tblBenhNhan.MaXa in -- thuoc xa
(Select MaXa
From tblXa

Where tblXa.MaHuyen in --thuoc huyen
(Select MaHuyen
From tblHuyen Where tblHuyen.MaTinh in -- thuoc tinh
( Select MaTinh
From tblTinh
Where tblTinh.TenTinh=@TenTinh)))
----------------------------------------------



THệ VIEN ẹIEN Tệ TRệẽC TUYEN
giới thiệu về Visual Basic 6.0 và cơ sở dữ liệu
trong Visual Basic 6.0.
II.1 Giới thiệu chung về Visua Basic
Visua Basic là một trong những ngôn ngữ lập trình bậc cao thông dụng
nhất hiện nay, là một sản phẩm của Microsoft. Nó cũng giống nh hầu hết các
ngôn ngữ lập trình bậc cao khác, trong Visua Basic chứa đầy đủ các câu lệnh
cần thiết, các hàm xây dựng sẵn,
Ngoài ra Visual Basic chứa một số phơng tiện giúp cho việc áp dụng
kỹ thuật hớng đối tợng trong việc truy cập dữ liệu. Trong Visual Basic có rất
nhiều phơng pháp truy cũng nh các đối tợng truy cập dữ liệu nh: ADO,
ADODB, DAO, ... nói chung các đối tợng này có những thuộc tính tơng đối
giống nhau. Trong luận văn này em chủ yếu đi sâu vào đối tợng ADO. Vì
ADO là một công cụ truy cập dữ liệu rất hữu hiệu và ADO cũng đợc cài đặt
trong chơng trình.
II.2 ADO là gì ?
ADO (Activex Data Object hay đối tợng dữ liệu ActiveX). Ta có thể hình
dung 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ợng dữ liệu từ xa). Mô hình đối tợng dữ liệu ActiveX rất gọn. Nó đợc thiết
kế để cho phé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 nhanh nhất nếu có thể. Tốc độ và tính đơn giản là một trong những
mục tiêu cốt lõi của ADO, 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ập trình. Thực tế chỉ có ba đối tợng chính 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.
- 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 còn gọi là các đối
tợng Errors đố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ợng con Properties để lu các thông tin chi tiết về đối tợng.

KIL
OBO
OKS
.CO
M

II.

Connection

Command

Parameter


Recorset

Fields

Error
Sơ đồ mô hình ActiveX Data Object



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M

II.3 Các thuộc tính đặc biệt của đối tợng ADO
Mô hình ADO có một số thuộc tính mà các mô hình 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 Texxt (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 khóa)
- 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

dbBenhNhan ta có mã lệnh 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;"
cn.ConnectionString = " Integrated Security=SSPI;Persist Security
Info=False;Initial Catalog=dbBenhNhan"
cn.Open
End Sub
Ngoài ra trong Visual Basic còn chứa một số kiểu dữ liệu thông dụng
khác cũng nh Visual Basic cho phép lập trình viên tự định nghĩa kiểu và cũng
nh hầu hết các ngôn ngữ lập trình khác, ngoài ra Visual Basic còn có các câu
lệnh chuẩn khác, ...



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

Chơng III. Phân Tích Và Thiết Kế
Hệ Thống
I. Phân tích hệ thống về chức năng

KIL
OBO
OKS
.CO
M

I.1 Biểu đồ phân cấp chức năng
1. Biểu đồ phân cấp chức năng là gì ?

Là một loại biểu đồ diễn tả sự phân rã dần dần các chức năng từ đại thể
đến chi tiết. Mỗi nút trong biểu đồ là một chức năng, và quan hệ duy nhất giữa
các chức năng, diễn tả bởi các cung nối liền các nút, là quan hệ bao hàm. nh
vậy biểu đồ phân cấp chức năng tạo thành một cấu trúc cây
Sau khi tìm hiểu và phân tích hệ thông quản Lý bệnh nhân tại bệnh viện tỉnh
Khánh Hòa em đã đa ra đợc biểu đồ phân cấp chức năng nh sau:
Quản lý bệnh nhân
0

Khám bệnh
2

Cấp số
1

Cấp
thuốc
2.1

Tiếp
nhận BN
2.2

Thu viên phí
3

Cung
cấp DV
2.3


Lập
bệnh án
2.4

Thu tạm
ứng BN
3.1

Thanh toán
với BHYT
3.2

2. Đặc điểm của biểu đồ phân cấp chức năng:

- Cho một cách nhìn khái quát, dễ hiểu, từ đại thể đến chi tiết về các
chức năng, nhiệm vụ cần thực hiện (thờng ở mức diễn tả logic)
- Rất dễ thành lập, bằng cách phân rã dần các chức năng từ trên xuống
- Có tính chất tĩnh, bởi chúng chỉ cho thấy các chức năng mà không cho
thấy trình tự xử lý.
- Thiếu vắng sự trao đổi thông tin giữa các chức năng.
Vì những lý do trên nên biểu đồ phân cấp chức năng thờng đợc sử
dụng làm mô hình chức năng trong bớc đầu phân tích, hoặc cho các hệ thống
đơn giản. Nếu hệ thống phức tạp thì biểu đồ phân cấp chức năng là quá sơ lợc



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO

OKS
.CO
M

và còn thiếu sót nêu trên nên không thể châm trớc đợc. Khi đó chúng ta
thờng dùng biểu đồ luồng dữ liệu
I.2 Biểu đồ luồng dữ liệu
1. Biểu đồ luồng dữ liệu là gì ?
Biểu đồ luồng dữ liệu là một loại biểu đồ nhằm mục đích diễn tả một quá
trình xử lý thông tin với các yêu cầu sau:
- Sự diễn tả ở mức logic, nghĩa là nhằm trả lời câu hỏi Làm gì, mà bỏ
qua câu hỏi làm nh thế nào ?.
- Chỉ rõ các chức năng (con) phải thực hiện để hoàn tất quá trình xử lý
cần mô tả
- Chỉ rõ các thông tin đợc chuyển giao giữa các chức năng đó, và qua
đó phần nào thấy đợc trình tự thực hiện của chúng.
2. Kỹ thuật phân mức
Kỹ thuật này còn đợc gọi là Phân tích từ trên xuống (top-down analysis)
tiến hành phân tích chức năng của hệ thống bằng cách đi dần từ một mô tả đại
thể đến những mô tả chi tiết thông qua nhiều mức. Sự chuyển dịch từ một mức
tới mức tiếp theo thực chất là phân ra một chức năng thành một số chức năng
con ở mức dới.
Với biểu đồ luồng dữ liệu thì quá trình phân tích trên xuống lại là quá trình
thành lập dần dần các biểu đồ luồng dữ liệu diễn tả các chức năng của hệ
thống theo từng mức. Mỗi mức là một tập hợp các biểu đồ luồng dữ liệu.
Mức 0, hay mức bối cảnh chỉ gồm biểu đồ luồng dữ liệu, trong đó chỉ có
một chức năng duy nhất, trao đổi các luồng thông tin với các đối tác.
Mức 1, còn gọi là mức đỉnh, cũng chỉ dùng một biểu đồ luồng dữ liệu, và
mức 2, 3, ..., mỗi mức gồm nhiều hơn 1 biểu đồ luồng dữ liệu đợc thành lập
nh sau:

- Cứ mỗi chức năng ở mức trên, ta thành lập một biểu đồ luồng dữ liệu, ở
mức dới, gọi là biểu đồ luồng dữ liệu định nghĩa chức năng đó theo cách sau:
+ Phân rã chức năng đó thành nhiều chức năng con.
+ Vẽ lại luồng dữ liệu vào và ra chức năng trên, nhng nay phải vào
hay ra chức năng con thích hợp.
+ Nghiên cứu các quan hệ về dữ liệu giữa các chức năng con, nhờ đó
bổ sung các luồng dữ liệu nội bộ hoặc các kho dữ liệu nội bộ.
- Các chức năng đợc đánh số theo ký pháp chấm, cho phép theo dõi
vệt triển khai trên xuống
Thông qua tìm hiểu hệ thống quản lý bệnh nhân tại bệnh viện tỉnh Khánh
Hòa ta có biểu đồ luồng dữ liệu của hệ thống nh sau:



THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Biểu đồ luồng dữ liệu mức bối cảnh: Trong biểu đồ luồng dữ liệu mức bối cảnh
chỉ có một chức năng 0 (chức năng quản lý bệnh nhân), các tác nhân của hệ
thống gồm: Bệnh nhân, khoa điều trị và phòng tài chính.

KIL
OBO
OKS
.CO
M

Kết quả

Yêu cầu KB

bệnh nhân


Quản lí
bệnh
nhân
0

Chi phí khám
chữa bệnh

Kết
quả

Danh sách
BN nhập
viện

Khoa điều trị

Bệnh
án

Danh
sách
BN
điều trị

Biểu đồ luồng dữ liệu mức bối cảnh

Chi phí
của BN


Phòng tài chính



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M

Biểu đồ luồng dữ liệu mức đỉnh:
Chức năng quản lý bệnh nhân đợc phân ra thành các chức năng cấp số,
khám bệnh, thanh toán viện phí. Ngoài ra ở đây trong biểu đồ còn xuất hiện
thêm các tác nhân nh khoa điều trị, phòng tài chính và toàn bộ kết quả khám
bệnh của bệnh nhân đợc lu vào một tệp có tên là hồ sơ bệnh nhân tất cả
những thông tin về bệnh nhân đợc lu trữ tại đây. Thông qua tệp này phòng
tài chính sẽ gửi giấy thanh toán viện phí đến cho bệnh nhân và bảo hiểm y tế .
Vị trí KB

Yêu cầu KB

bệnh nhân

Cấp
số
1


Y/C KB tại
vị trí

Khám
bệnh
2

Kết
quả

Kết quả

bệnh nhân

Xác
nhận
TT

Kết
quả

Danh
sách BN
nhập viện

Bệnh
án

Đóng tạm
ứng


Thanh
toán V/P
3

Danh sách
BN đã đóng
T.Ư

Khoa Điều Trị

Danh sách
BN điều trị

Phòng Tài Chính

Hồ sơ bệnh nhân

Biểu đồ luồng dữ liệu mức đỉnh



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M


Biểu đồ luồng dữ liệu biểu diễn chức năng khám bệnh:
Lúc này chức năng khám bệnh đợc phân rã thành bốn chức năng: Cấp
thuốc, cung cấp dịch vụ, tiếp nhận bệnh nhân nhập viện, lập bệnh án. lú này
bệnh nhân đã có đợc kết quả khám bệnh. Trong biểu đồ trên hầu hết các chức
năng đợc thực hiện một cách thủ công và đợc lu lại trong tệp Hồ Sơ bệnh
nhân nh vậy khi bệnh nhân mua thuốc thì tại phòng cấp thuốc sẽ lu lại đơn
thuốc của bệnh nhân đã mua và tơng tự nh vậy khi bệnh nhân dùng dịch vụ
cũng đợc lu lại thông tin đó để phục vụ việc lu trữ và thanh toán tạm ứng
sau này. Song khi bệnh nhân phải nhập viện thì tại khoa điều trị sẽ lập bệnh án
cho bệnh nhân đó và cũng đợc lu lại trong bệnh án ghi đầy đủ thông tin về
bệnh nhân quá trình điều trị tại bệnh viện.

Đơn thuốc

Bệnh nhân

Thuốc cấp

Giấy
NV

Tiếp
nhận

Yêu cầu

Dịc vụ dùng

Tiếp nhận
BN N/V

2.2

Giấy
NV

Cung
cấp dịch
vụ
2.3

Khoa điểu trị
D/SBN
nhập
viện

Bệnh
án

Hồ sơ Bênh Nhân

Lập
bệnh án
2.4

Biểu đồ luồng dữ liệu biểu diễn chức năng khám bệnh

Cấp
thuốc
2.1




THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M

Đối với biểu đồ luồng dữ liệu phân cấp chức năng thanh toán viện phí:
Tơng tự chức năng khám bệnh với chức năng thanh toán tạm ứng viện phí của
bệnh nhân đợc phân ra thành hai chức năng là: thu tạm ứng, và thanh toán với
bảo hiểm y tế . Theo quy định của bệnh viện cứ ba ngày bệnh viện lại yêu cầu
bệnh nhân thanh toán tạm ứng viện phí một lần và theo chu kỳ mỗi tháng bệnh
viện lại in danh sách bệnh nhân có bảo hiểm y tế đã điều trị tại bệnh viện trong
tháng để thanh toán với bảo hiểm y tế. Đối với bệnh nhân có bảo hiểm y tế
cũng phải đóng một phần viện phí theo quy định phần trăm trên bảo hiểm y tế.
Cả hai chức năng này đều đợc thực hiện một cách tự động.

Phiếu thanh toán

bệnh nhân

Thanh toán viện phí

Thu tạm
ứng
3.1


Xác nhận thanh toán

Hồ sơ Bênh Nhân

Danh sách BN
đã đóng T.Ư

Danh sách bệnh
nhân điều trị

Phòng tài chính

Danh sách BN điều
trị có BHYT

Thanh
toán với
BHYT
3.2

Biểu đồ luồng dữ liệu biểu diễn chức năng thanh toán viện phí

II. Phân tích hệ thống về dữ liệu
II.1 Mô hình thực thể/liên kết

1. Khái niêm mô hình thực thể/liên kết

Mô hình thực thể/ liên kết (Entity/Association Model) là mô hình dữ liệu do
P.P. Chen đa ra năm 1976 và sau đó đợc dùng khá phổ biến trên thế giới. Nó
có đặc điểm khá đơn giản và gần với t duy khách quan. Khi xem xét các

thông tin, ngời ta thờng gom cụm chúng xung quanh các vật thể
2. Các loại mô hình E/A
- Mô hình E/A kinh điển

Mô hình E/A kinh điển xuất phát từ ba khái niệm cơ bản: thực thể, liên
kết và thuộc tính.
+ Các thực thể: Là một vật thể cụ thể hay trừu tợng, tồn tại thực sự và
khá ổn định trong thế giới thực, mà ta muốn phản ánh nó trong hệ thống thông
tin.



THệ VIEN ẹIEN Tệ TRệẽC TUYEN
+ Các thuộc tính: Thuộc tính (Property hay attribute) là một giá trị dùng
để mô tả khía cạnh nào đó của thực thể.
+ Các liên Kết: Một liên kết (association) là một sự gom nhóm các thực
thể trong đó mỗi thực thể có một vai trò nhất định.

KIL
OBO
OKS
.CO
M

- Mô hình thực thể/ Liên kết mở rộng.
Đối với những hệ thống phức tạp khi phân tích và thiết kế ngời ta thơng
dùng đến mô hình E/A mở rộng. Do các điểm mở rộng này chịu ảnh hởng từ
xu hớng hiện đại của mô hình hóa hớng đối tợng, cũng nh các hệ quản trị
cơ sở dữ liệu hớng đối tợng. Các đặc điểm của mô hình E/A mở rộng
+ Các kiểu thuộc tính đa trị: Cho phép nhận giá trị có thể là một tập các giá

trị.
+ Các kiểu thuộc tính phức hợp: Cho phép sử dụng các kiểu thuộc tính là tổ
hợp.
+ Các kiểu thực thể con: xuất hiện bởi yêu cầu chuyên biệt hóa và khái quát
hóa khi cần phân cấp các sự vật
- Mô hình E/A hạn chế

Mô hình E/A hạn chế tuy bị hạn chế nhiều về các hình thức diễn tả (khó vận
dụng), nhng lại rất gần với mô hình quan hệ do đó lại dễ dàng chuyển sang
cài đặt với hệ quản trị cơ sở dữ liệu quan hệ hơn. Các đặc điểm của mô hình
E/A hạn chế.
+ Trong mô hình E/A hạn chế chỉ có kiểu liên kết 1-nhiều và đợc biểu
diễn nh sau:
A

B

+ Trong mô hình E/A hạn chế các kiểu liên kết 0/1-nhiều đợc coi là
trờng hợp đặc biệt của 1-nhiều
Trong báo cáo này Em chi sử dụng mô hình E/A hạn chế. Vì bất cứ mô hình
E/A kinh điển hay E/A mở rộng nào cũng có thể biến đổi thành mô hình E/A
hạn chế đợc, hơn nữa mô hình E/A hạn chế là mô hình gần với mô hình cơ sở
dữ liệu quan hệ nhất.
Sau khi phân tích hệ thống em đã đa ra mô hình E/A hạn chế của bài toán
nh sau (trang sau):



THệ VIEN ẹIEN Tệ TRệẽC TUYEN


Huyện
Mã huyện
Tên huyện
Mã tỉnh


Mã xã
Tên xã
Mã huyện

Khoa
Mã khoa
Tên khoa

Chuyên môn
Mã CM
Tên CM

Chức vụ

Mã CV
Tên CV

KIL
OBO
OKS
.CO
M

Tỉnh

Mã tỉnh
Tên tỉnh

bảo hiểm y tế
Mã bệnh nhân
Số thẻ BHYT
Ngày bắt đầu
Ngày kết thúc
Phần trăm

Nhân viên
Mã Nhân viên
Họ tên NV
Ngày sinh NV
Giới tính NV
Số nhà NV
Điện thoại NV
Mã xã
Mã khoa
Mã CM
Mã CV

Bệnh án
Mã khám bệnh
Mã nhân viên
Mã bệnh nhân
Mã bệnh
Mã vị trí
Mã nơi Đ.T
Ngày vào

Ngày ra
Tình trạng ra

Tạm ứng
Mã tạm ứng
Lần tạm ứng
Số tiền
Ngày tạm ứng
Mã bệnh nhân

Cơ quan
Mã cơ quan
Tên cơ quan
Điện thoại CQ
Fax CQ

Nơi điều trị
Mã nơi Đ.T
Tên nơi Đ.T
Đơn giá

Vị Trí
Mã vị trí
Tên vị trí

Dòng khám bệnh
Mã khám bệnh
Mã nhân viên
Mã bệnh nhân
Mã bệnh

Mã vị trí
Ngày KB
Nội dung KB
Chi phí KB

Bệnh nhân
Mã bênh nhân
Họ bệnh nhân
Tên bệnh nhân
Ngày sinh BN
Giới tính BN
Mã xã

Cán bộ
Mã bệnh nhân
Mã cơ quan

Bệnh
Mã bệnh
Tên bệnh

Dịch Vụ Dùng
Mã khám bệnh
Mã nhân viên
Mã bệnh nhân
Mã bệnh
Mã vị trí
Mã nơi Đ.T
Mã dịch Vụ
Lần dùng


Thuốc dùng
Mã khám bệnh
Mã nhân viên
Mã bệnh nhân
Mã bệnh
Mã vị trí
Mã thuốc
Số lợng
Liều dùng

Thuốc
Mã thuốc
Tên thuốc
Đơn giá

Dịch vụ
Mã dịch vụ
Tên dịch vụ
Đơn giá



THệ VIEN ẹIEN Tệ TRệẽC TUYEN

KIL
OBO
OKS
.CO
M


II. Mô hình quan hệ
1. Khái niệm
Mô hình quan hệ do Codd đề xuất năm 1970, với u điểm nh sau:
+ Đơn giản: các dữ liệu đợc biểu diễn dới một dạng duy nhất, là quan hệ,
tức là các bảng giá trị, khá tự nhiên và dễ hiểu đối với ngời dùng không
chuyên tin học.
+ Chặt chẽ: các khái niệm đợc hình thức hóa cao, cho phép áp dụng các
công cụ toán học, các thuật toán.
+ Trừu tợng hóa cao: mô hình chỉ dừng ở mức quan niệm, nghĩa là độc lập
với mức vật lý, với sự cài đặt, với các thiết bị. Nhờ đó làm cho tính độc lập
giữa dữ liệu và chơng trình cao.
+ Cung cấp ngôn ngữ truy nhập dữ liệu ở mức cao, dễ sử dụng và trở thành
chuẩn.
2. Các dạng chuẩn của lợc đồ quan hệ
Một lợc đồ quan hệ R là ở dạng chuẩn 1 (1NF) nếu các miền thuộc tính
của nó đều là các miền đơn (nghĩa là không cấu thành từ nhiều miền khác).
Một lợc đồ quan hệ R là ở dạng chuẩn 2 (2NF) nếu nó là 1NF và các phụ
thuộc hàm giữa khóa và mỗi thuộc tính ngoài khóa đều là phụ thuộc hàm sơ
đẳng. Nói cách khác, mọi thuộc tính ngoài khóa đều không phụ thuộc bộ phận
vào khóa.
Một lợc đồ quan hệ R là ở dạng chuẩn 3 (3NF) nếu nó là 2NF và các phụ
thuộc hàm giữa khóa và mỗi thuộc tính ngoài khóa đều là phụ thuộc hàm trực
tiếp. Nói cách khác là không tồn tại phụ thuộc hàm giữa các thuộc tính ngoài
khóa.
3. Các lợc đồ quan hệ của hệ thống
Từ mô hình thực thể liên kết (mô hình E/A hạn chế ở trên) ta chuyển sang
các lợc đồ quan hệ nh sau:
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)
Khoa (Mã khoa, Tên khoa)

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ụ)
Bệnh (Mã bệnh, Tên bệnh)

Vị trí (Mã vị trí, Tên vị trí)

Nhân viên (Mã NV, Họ tên NV, Ngày sinh NV, Giới tính NV, Số nhà
NV, Điện thoại NV, Mã xã, Mã khoa, Mã CM, Mã CV)
Dòng khám bệnh (Mã khám bệnh, Mã nhân viên, Mã bệnh nhân, Mã
bệnh, Mã vị trí, Ngày KB, Nội dung KB, Chi phí KB)



THệ VIEN ẹIEN Tệ TRệẽC TUYEN
Bệnh nhân (Mã bệnh nhân, Họ bệnh nhân, Tên bệnh nhân, Ngày sinh
BN, Giới tính BN, Mã xã)
Bảo hiểm y tế (Mã bệnh nhân, Số thẻ BHYT, Ngày bắt đầu, Ngày kết
thúc, Phần trăm)

KIL
OBO
OKS
.CO
M

Cơ quan (Mã cơ quan, Tên cơ quan, Điện thoại CQ, Fax cơ quan)
Cán bộ (Mã bệnh nhân, Mã cơ quan)


Tạm ứng (Mã T.ứng, Lần T.ứng, Số tiền, Ngày T.ứng, Mã bệnh nhân)
Bệnh án (Mã khám bệnh, Mã nhân viên, Mã bệnh nhân, Mã bệnh, Mã vị
trí, Mã nơi Đ.T, Ngày vào, Ngày ra, Tình trạng ra)
Nơi Điều Trị (Mã nơi Đ.T, Tên nơi Đ.T, Đơn giá)

Dịch Vụ Dùng (Mã khám Bệnh, Mã nhân viên, Mã bệnh nhân, Mã
bệnh, Mã vị trí, Mã nơi Đ.T, Mã dịch Vụ, Lần dùng)
Dịch Vụ (Mã dịch vụ, Tên dịch vụ, Đơn giá D.V)

Thuốc Dùng (Mã khám Bệnh, Mã nhân viên, Mã bệnh nhân, Mã bệnh,
Mã vị trí, Mã thuốc, Số lợng, Liều dùng)
Thuốc (Mã thuốc, Tên thuốc, Đơn giá)
4. Danh Sách Các Bảng
4.1 Bảng Tỉnh

Tỉnh (Mã tỉnh, Tên tỉnh)

Tên trờng
Loại dữ liệu
Mô tả
Kích thớc
Mã tỉnh
Char
Mã tỉnh
Len()=2
Tên tỉnh
Char
Tên tỉnh
30

Giải Thích
+ Bảng tỉnh lu trữ thông tin về tỉnh mà bệnh nhân và Nhân Viên đang
sống
4.2 Bảng Huyện

Huyện (Mã Huyện, Tên Huyện, Mã Tỉnh)

Tên trờng
Mã huyện
Tên huyện
Mã tỉnh

Loại dữ liệu
Char
Char
Char

Mô tả

Mã huyện
Tên huyện
Mã tỉnh

Kích thớc
Len()=4
30
Len()=2

Giải Thích
+ Bảng huyện lu trữ thông tin về huyện mà bệnh nhân và Nhân Viên

đang sống
- Trờng mã huyện gồm có 4 ký tự 2 ký tự đầu là mã tỉnh mà huyện đó
trực thuộc hai ký tự tiếp theo là thứ tự huyện trong tỉnh.


×