Khi tiến hành tìm hiểu, khảo sát hệ thống cũ ta phải phát hiện ra những nhược điểm còn tồn đọng, đề xuất ý tưởng cho giải pháp mới
Trang 1LỜI NÓI ĐẦU
Ngày nay với sự phát triển hết sức mạnh mẽ của cuộc cách mạng khoa học kĩthuật Ngành công nghệ thông tin phát triển một cách vượt bậc, ngành ngành sửdụng tin học, người người sử dụng tin học Nó là động lực thúc đẩy nhiều ngànhkhoa học khác phát triển ở nước ta tin học đã đi vào ngõ ngách của cuộc sống gópphần giải phóng đáng kể sức lao động của con người Nên nhu cầu ứng dụng côngnghệ thông tin cũng không ngừng phát triển và phù hợp với nhiều ngành nghề
Đặc biệt trong công việc quản lý nó không thể tách rời việc tìm hiểu hoạtđộng của các cơ quan xí nghiệp và cách thức xử lý thông tin của các bộ phận trongđơn vị đó, máy tính đang dần thay thế con người trong một số lĩnh vực công việc
Ngày nay máy tính được xem như là một công cụ để quản lý rất có hiệu quả
Để có được điều đó không chỉ cần kiến thức nhất định về chuyên môn mà cần phải
có kiến thức cơ bản về quản lý và nghiệp vụ hiểu rõ các chức năng, các bộ phậncần nghiên cứu
Mức độ hiệu quả của việc ứng dụng máy tính nhanh hay chậm còn phụ thuộcvào sự hiểu biết của người phân tích và thiết kế hệ thống Trong hệ thống quản lýBệnh viện nói chung hệ thống quản lý bệnh án ngoại nói riêng ứng dụng của máytính như là một công cụ để thu thập, xử lý, cung cấp các thông tin cần thiết cho cácnhà quản lý trong công việc
Trong chương trình quản lý Bệnh án ngoại gồm có năm chương:
Chương 1 Cơ sở lý thuyết
Chương 2 Giới thiệu về Visual Basic, SQL Server 2000
Trang 2Cuối cùng em xin chân thành cảm ơn cô giáo đã tận tình giúp đỡ em hoànthành chương trình này.
Trang 3CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1 Các bước xây dựng hệ thống thông tin quản lý
Việc xây dựng hệ thống này thường được thực hiện qua 5 giai đoạn sau:
1.1.Nghiên cứu sơ bộ và lập dự án
Khi tiến hành tìm hiểu, khảo sát hệ thống cũ ta phải phát hiện ra nhữngnhược điểm còn tồn đọng, đề xuất ý tưởng cho giải pháp mới
Cần tham khảo ý kiến lãnh đạo của cơ quan để biết được yêu cầu của họnhằm định hướng cho hệ thống mới
Phải nêu ra được tính khả thi của bài toán và có định hướng cho giai đoạntiếp theo
1.4 Thiết kế chi tiết
Thiết kế các công việc thủ công để giải quyết việc xử lý thông tin trước khiđưa vào máy tính và một số công việc sau khi được máy in xử lý đưa ra
Thiết kế các tệp dữ liệu và các thủ tục thông tin trên máy tính
Thiết kế giao diện với người sử dụng
Thiết kế các modul chương trình
Hướng dẫn sử dụng làm việc với chương trình, cài đặt chương trình
Đánh giá được các mặt ưu điểm , nhược điểm của hệ thống mới
1.5 Cài đặt, lập trình
Chọn ngôn ngữ lập trình
Cài đặt các tệp, viết các đoạn chương trình chung
Trang 4Song song với quá trình khai thác thì chúng ta cần phải bảo trì hệ thống.Sửa các lỗi.
Điều chỉnh theo yêu cầu mới
Cải thiện hiệu năng của hệ thống
1.6 Một số yêu cầu khác của chương trình
Tính mở:
Với mỗi hệ thống thông tin, xây dựng có tính mở cao là công việc hết sứccần thiết Trong hệ thống quản lý Bệnh án Ngoại này tính mở cần đáp ứng nội dungsau:
Các báo có định kỳ, thường xuyên có thể sửa đổi và bổ sung với kinh phínhỏ
Cập nhật thêm bệnh nhân mới vào
Trang 52 Biểu đồ phân cấp chức năng
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ể đếnchi 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ứcnă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
3 Biểu đồ luồng dữ liệu
Biểu đồ luồng dữ liệu là một công cụ mô tả quan hệ thông tin giữa các côngviệc Nó chỉ ra các thông tin vận chuyển từ một tiến trình hoặc chức năng này sangchức năng khác Điều quan trọng nhất là nó chỉ ra các thông tin nào cần phải có sẵntrước khi cho thực hiện một hành động hay tiến trình
Tóm lại biểu đồ luồng dữ liệu là một công cụ quan trọng nhất trong việcphân tích thiết kế hệ thống có cấu trúc Nó đưa ra một phương pháp thiết lập mốiquan hệ giữa chức năng hoặc tiến trình của hệ thống với thông tin mà nó sử dụng
4 Mô hình thực thể quan hệ
Là mô hình dữ liệu logíc được xây dựng trên các khái niệm logíc như: Thực thể,kiểu thực thể, liên kết, kiểu liên kết, thuộc tính
Thực thể, kiểu thực thể
Trang 6+Thực thể là một đối tượng hợp thành để chúng ta nghiên cứu đối tượng đó.Tiêu chuẩn để xác nhận được thực thể: Có ích trong quản lý, phân biệt được giữacác thực thể với nhau.
+Kiểu thực thể là một tập hợp nhiều thực thể cùng loại được mô tả bằngnhững đặc trưng giống nhau
Liên kết, kiểu liên kết
+Liên kết là sự ghép nối có ý nghĩa giữa hai hay nhiều kiểu thực thể phảnánh một cách thực tế về quản lý
+Kiểu liên kết là một tập hợp nhiều liên kết cùng loại Giữa các thực thể, cóthể tồn tại nhiều mối liên kết, mỗi mối liên kết xác định một tên duy nhất
Các kiểu liên kết:
Liên kết một- một
Giả sử có hai kiểu thực thể A và B, giữa chúng có quan hệ một- một nếu nhưmột thực thể trong kiểu thực thể A đều có tương ứng một thực thể trong kiểu thựcthể B và ngược lại
Liên kết một- nhiều
Giữa hai kiểu thực thể A và B có liên kết một- nhiều nếu như một thực thểtrong A tương ứng với nhiều thực thể trong B Ngược lại một thực thể của B tươngứng duy nhất một thực thể của A
Liên kết nhiều- nhiều
Hai kiểu thực thể A và B có quan hệ nhiều- nhiều với nhau nếu một thực thểtrong B có nhiều thực thể trong A và ngược lại
Trang 75 Lựa chọn công cụ
Để cài đặt hệ thống như đã phân tích trên, ta sử dụng nhiều công cụ khácnhau, về mặt cấu hình máy tối thiểu là bộ vi xử lý: pentiumII và cài đặt hệ điềuhành từ Windown 95 trở lên
Để thiết kế chương trình, chúng ta có thể thực hiện bằng nhiều cách khácnhau Tuy nhiên ở đây chúng ta sử dụng ngôn ngữ lập trình Visual Basic và ngônngữ quản trị cơ sở dữ liệu Access được các nhà phát triển chiến lược coi là: Môitrường phát triển tích hợp các ứng dụng nhanh và là cách nhanh nhất, dễ dàng đểtạo ứng dụng cho Microsoft Windown ”Basic” là một ngôn ngữ đã được sử dụngbởi rất nhiều nhà lập trình, hơn tất cả các ngôn ngữ lập trình trong lịch sử máy tính.Hơn nữa ngôn ngữ Visual Basic ứng dụng bao gồm cả trong Microsoft Excel,Microsoft Access và nhiều ứng dụng Windowns khác sử dụng cùng ngôn ngữ
Với việc sử dụng rộng rãi của ngành tin học như hiện nay có rất nhiều hệquản trị cơ sở dữ liệu như: Dbase, Foxbase, Access, Microsoft SQL Server
ở đây ta chọn hệ cơ sở dữ liệu Access để thực hiện Bởi vì qua tìm hiểu ta
thấy Access là hệ phần mềm quen thuộc, hệ quản trị cơ sở dữ liệu quan hệ chạytrong môi trường Windown là một trong những loại linh hoạt nhất có nhiều ưuđiểm:
-Khai thác được các lợi thế của Windown và nó thừa hưởng tất cả các tínhnăng mà Windown đang có
-Thao tác, xử lý dễ dàng, phù hợp với số đông người sử dụng, bởi vì máytính cá nhân ở Việt Nam hiện nay đang được sử dụng hệ điều hành Windown 95trở lên Điều này làm giảm bớt chi phí đào tạo cho cơ quan
Trang 8-Trong một cơ sở dữ liệu quan hệ ta có thể xác định được mối quan hệ giữacác bảng dữ liệu khác nhau chứa trong cơ sở dữ liệu đó
-Một lợi thế của cơ sở dữ liệu quan hệ là loại được những thông tin khôngcần thiết, đặc biệt là có tính toàn vẹn tham chiếu
-Tạo được nhiều công cụ thiết kế dễ dàng đảm bảo được tính toàn vẹn của dữliệu
-Đảm bảo tính nhất quán về cấu trúc của dữ liệu như tên, kiểu độ rộng củatrường( Field)
-Sự phong phú linh hoạt của công cụ Form tạo điều kiện thuận lợi cho lậptrình viên tạo giao diện thân thiện, gần gũi với người sử dụng trong việc nhập dữliệu
-So sánh, đối chiếu, dữ liệu tổng hợp của các nhóm với nhau một cách gọngàng, nhanh chóng
-Các hàm của Access rất phong phú
Đặc biệt Access chạy trong môi trường Windown tạo thêm nhiều chức nănggiúp người lập trình thuận lợi trong giao diện và hệ thống menu
Trang 9chương 2 giới thiệu về visual basic,
1.1 Cách khai báo biến
Visual Basic dùng khai báo biến trong trương trình như sau:
Dim< Tên biến > As < Kiểu dữ liệu>
Ta cũng có thể khai báo biến theo cách sau :
Dim< Tên biến>
Khi đó có kiểu Variant
1.2 Quy tắc đặt tên biến
Tên biến có chiều dài tối đa 255 ký tự, phải bắt đầu bằng một chữ cái, khôngđặt các khoảng trống và các ký hiệu(+-*/ ) trong tên biến, không được trùng với từkhoá của ngôn ngữ, không đặt tên trùng nhau
lá biến riêng hay biến cục bộ
Nếu ta dùng từ khoá Public thay cho Dim để khai báo, biến sẽ tồn tại trongsuốt thời gian thực hiện chương trình và có thể dùng được trong bất kỳ đoạn lệnhnào của chương trình Biến như vậy gọi là biến chung hay biến toàn cục
Trang 102 Các kiểu dữ liệu cơ bản trong Visual Basic.
Tên kiểu Kích thước Khoảng giá trị
Interger 2 byte -32,768 đến 32767
Long 4 byte -2,147,483,648 đến 2,147,483,647
Single 4 byte -3,402823E38 đến -1,401298E-45(các giá trị âm) và
1,401298E-45 đến 3,402823E38(các giá trị dương)Double 8 byte -1,79769E308 đến -4,94065E-324(giá trị âm) và
4,94065E-324 đến 1,79769E308(giá trị dương)Currency 8 byte -922337203685477,5808
Or Trả về False nếu 2 số hạng đều False, ngược lại trả về TrueNot Trả về False nếu 2 số hạng đều True, ngược lại
3.2 Các toán tử tính toán
Tên toán tử ý nghĩa
+ Cộng 2 số hạng với nhau, có thể là cộng 2 chuỗi
Trang 11\ Chia lấy phần nguyên
3.3 Các toán tử so sánh
Tên toán tử ý nghĩa
> So sánh xem số thứ nhất có lớn hơn số thứ 2 không
< So sánh xem số thứ nhất có lớn hơn số thứ 2 không
= So sánh xem số thứ nhất có bằng số thứ 2 không
>= So sánh xem số thứ nhất có lớn hơn hoặc bằng số thứ 2 không
<= So sánh xem số thứ nhất có nhỏ hơn hoặc bằng số thứ 2 không
4 Điều khiển dòng chương trình
4.1 If then
If Exprssion[ THEN] ; Nếu điều kiện đúng
Commands ; thực hiện một (hoặc nhiều) lệnh
[ ELSE ; ngược lại
Commands] ; thực hiện một[ hoặc nhiều]
ENDIF
4.2 Select Case
Select Case testexpression ;Chọn biểu thức kiểm tra
[Case expressionlist-n ;danh sách biểu thức nếu đúng thì
[statements-n]] ;thực hiện một(hoặc nhiều) lệnh
[Case Else expressionlist-n ;trái lại thực hiện một (hoặc nhiều) lệnh
[elsestatements-n]]
End Select
Trang 12
4.3 Do Loop ;vòng lặp không xác định trước
Do[{while/Until} condition] ;Kiểm tra điều kiện lặp nếu đúng/ nếu sai
[statements] ;thực hiện một( hoặc nhiều) lệnh
Do[{while/Unit}condition] ; kiểm tra điều kiện lặp nếu đúng/ nếu sai; thì lặp lại
4.4 For Next ; Vòng lặp biết trước số lần lặp
For counter = start To end[Step step]
[statements]
[Exit For]
[statements]
Next
4.5 For Each Next ; vòng lặp biết trước số lần lặp
For Each element In group ; lặp theo số phần tử trong tập hợp
[statements]
[Exit For]
Trang 13Thủ tục Sub chỉ thực hiện các tác vụ còn hàm Function trả về giá trị.
Một thủ tục trước khi sử dụng cần định nghĩa bằng từ khoá Sub như sau:
[Private/Public] Function<Tên hàm>( tham số)[as kiểu]
<các mã lệnh của thủ tục>
Trang 14<Tên hàm>=<giá trị>
End Function.
2 Xây dựng các dơn thể(Modules)
Tuy rất dễ thực hiện Visual Basic với mã lệnh được gắn vào biểu mẫu đơnnhưng để tận dụng toàn bộ ưu thế của Visual Basic, bạn cần sử dụng nhiều biểumẫu và có mã lệnh trên tất cả các biểu mẫu đó tương tác tron đồ án của bạn
Để làm điều này bạn cần mã lệnh không phụ thuộc vào biểu mẫu bất kỳ nhưng
có thể dễ dàng làm việc với mọi biểu mẫu trong đồ án của bạn Loại mã lệnh nàycho phép bạn xây dựng mã lệnh cho phép bạn xây dựng các mã tổng thể và các thủtục tổng thể cho một đồ án
Các đơn thể khồng có các thành phần hiển thị Bạn cần bổ sung đơn thể bằngcách chọn Project/ Add Module
Bổ sung đơn thể hiện hữu bằng cách chọn Project/ Add File Các có đuôi mặcđịnh là bas
7 Để điều khiển dữ liệu để tạo giao diện người sử dụng
7.1 Giới thiệu chung
Có rất nhiều cách điều khiển dữ liệu để quản lý kết nối giữa biểu mẫu Visual Basic với cơ sở dữ liệu như DAO( Data Acces Object ) ( thường dùng để kết nối với cơ sở dữ liệu trên máy tính cá nhân như là Microsoft Access), RDC( dùng cho client / Server), và ADO( Active Data Object), cho phép ta truy cập vào mọi loại
dữ liệu bao gồm nguồn dữ liệu trên máy tính cá nhân, trên hệ Client/ Server và không thuộc mô hình quan hệ Sau đây là cách thức của một điều khiển ADO kết
Trang 15nối với cơ sở dữ liệu trong ứng dụng:
7.2 Khái quát về ADO
ADO cho phép bạn viết một ứng dụng để truy nhập và khai thác dữ liệutrong một máy chủ chứa cơ sở dữ liệu thông qua OLEDB provider Các tiện íchchính của ADO là tốc độ cao, dễ sử dụng, tiêu tốn bộ nhớ ít và dùng đĩa ít
ADO có nhiều đối tượng ở đây ta quan tâm đến đối tượng Connection và đốitượng Recordset Mỗi đối tượng đều có tập hợp Properties được dùng để lưu cáctính chất động hoặc các tính chất đặc biệt của provider cho các đối tượng này.Đối tượng Connection là đối tượng cao nhất trong các cây phân cấp ADO Data,dùng ADO Data để biểu diễn kết nối tới nguồn dữ liệu thông qua OLE DB dataprovider và quản lý tất cả các truyền thông giữa giải pháp của bạn và nguồn dữliệu Sau đây là một ví dụ cách tạo điều khiển dữ liệu ADO Data:
’Connect to SQL Server by ADODB
Public Sub Connect(Server As String, Dbname As String, UID As String, Pwd As String)
Set Cn = New ADODB.Connection
With Cn
Provider=”SQLOLEDB.1”
ConnectionString=”SERVER=”&server&”;DATABASE=”&Dbname&”; UID&”;PWD=&Pwd &”;”
Kết nối với
Kết nối với Chứa
Biểu mẫu
Visual
Basic
Các thuộc tính datasourc
e, datafield của điều khiển ràng buộc
dữ liệu
Cơ sở dữ liệu
Các thuộc tính connectionStr
ing RecordSource của điều khiển ADOData
Trang 16Open
End With
End Sub
Đối tượng Recordset: là đối tượng bao gồm một tập các bản ghi được trả về
từ một câu truy vấn, và một con trỏ trong các bản ghi đó Bạn có thể mở một đốitượng Recordset không cần mở rõ ràng một đối tượng Connection bằng cáchchuyển một xâu kết nối vào phương thức Open của đối tượng Recordset Tuy nhiênchứa một tập các fields chứa đối tượng field Sau đây là một ví dụ tạo Recordsetkhi đã thiết lập Connection ở trên:
8 Công cụ tạo báo cáo trên cơ sở dữ liệu
Visual Basic cho phép truy cập đến một số kỹ thuật Client/Server hỗ trợ truycập rất hiệu quả, đặc biệt là khi nó dùng để làm báo cáo Có nhiều cách để tạo báocáo như Datareport, Microsoft Access, Crystal Report, đối tượng Visual BasicPrinter, Videosoft VsView, tuy nhiên để đạt dược tính hiệu quả và giao diện đẹp thìphải nói đến Crystal Report, nó cho phép tạo báo cáo cơ sở dữ liệu ứng dụng viếtbằng Visual Basic Nó gồm 2 phần chủ yếu: Trình bày thiết kế báo cáo xác định dữliệu sẽ đưa vào báo cáo, cách thể hiện để đưa vào báo cáo một điều khiển ActiveXcho phép thi hành, hiển thị, in ấn lúc thi hành ứng dụng
II Giới thiệu tổng quan về cơ sở dữ liệu SQL SERVER 2000
1 Tổng quan
Trang 171.1 Các thành phần của một cơ sở dữ liệu
Một cơ sở dữ liệu trong SQL Server 2000 bao gồm một tập các bảng chứamột tập hợp nhất định về dữ liệu có cấu trúc Một bảng chứa một tập hợp các hàng
và các cột Mỗi cột trong bảng được thiết kế chứa một loại thông tin nhấtđịnh( chẳng hạn: ngày tháng, tên, số tiền, hay các số) Các bảng có nhiều loại đièukhiển( các ràng buộc, các qui tắc, các trigger, các xác lập mặc định, các kiểu dữliệu người dùng tuỳ ý) nhằm đảm bảo tính hiệu lực của dữ liệu Các bảng có thẻ cócác chỉ số để giúp tìm nhanh chóng các hàng Các ràng buộc DRI( DeclarativeReferentive Integrity) có thể được bổ sung vào các bảng để đảm bảo tính nhất quáncủa dữ liệu liên quan trong các bảng khác nhau Một cơ sở dữ liệu có thể chứa cácthủ tục sử dụng mã lập trình Transact-SQL để thực hiện các thao tác liên quan đến
dữ liệu trong cơ sở dữ liệu, chẳng hạn như lưu trữ các khung xem nhằm cung cấp
sự truy cập tuỳ biến vào dữ liệu bảng
1.2 Các file và filegroup
Microsoft SQL Server 2000 sắp xếp một cơ sở dữ liệu bằng cách sử dụng cácfile hệ điều hành Tất cả dữ liệu và đối tượng cơ sở dữ liệu, chẳng hạn như cácbảng, các thủ tục có sẵn, các trigger và các khung xem, được lưu trữ trong các file
hệ điều hành:
Primary: File này chứa thông tin khởi động dành cho cơ sở dữ liệu và được
sử dụng để chứa cơ sở dữ liệu Mỗi cơ sở dữ liệu có một file dữ liệu chính
Secondary: Các file này chứa tất cả các dữ liệu, không nắm vừa trong file dữliệu chính Nếu file chính có thể chứa tất cả dữ liệu trong cơ sở dữ liệu thì các cơ
sở dữ liệu không cần có các file được phụ Một số cơ sở dữ liệu có thể lớn tới nỗiphải sử dụng các file phụ hay cần sử dụng các file phụ trên các ổ đĩa riêng để phân
dữ liệu qua nhiều ổ đĩa
Transaction Log: Các file này chứa thông tin log được sử dụng để phục hồi
cơ sở dữ liệu Phải có ít nhất một log file cho một cơ sở dữ liệu
Trang 18Các filegroup cho phép nhóm các file lại với nhau để dễ quản lý và cấp phát
dữ liệu
1.3 Các transaction log
Một cơ sở dữ liệu trong Microsoft SQL Server 2000 có ít nhất một file dữliệu và một transactin log.file Dữ liệu và transaction log file không bao giờ đượckết hợp với nhau trên cùng một file, và các file riêng lẻ được sử dụng bởi chỉ một
cơ sở dữ liệu
Microsoft SQL Server 2000 sử dụng transaction log của mỗi cơ sở dữ liệu đểphục hồi các thao tác Transaction log là một bảng ghi liên tiếp tất cả các hoạt độngchỉnh sửa đã xảy ra trong cơ sở dữ liệu cũng như thao tác đã thực hiện mỗi hoạtđộng đã chỉnh sửa Transaction log ghi lại sự bắt đầu của mỗi giao tác Nó ghi cácthay đổi và thông tin để undo lại các hoạt động chỉnh sửa( nếu cần sau này) trongsuốt mỗi giao tác Đối với một số hoạt động lớn như Create Index, transaction logghi lại hoạt động đã xảy ra File log phát triển liên tục khi các hoạt động xảy ratrong cơ sở dữ liệu Transaction log ghi cấp phát và huỷ cấp phát các trang, cuộn đihay cuộn lại mỗi giao tác Các tiến trình sao lưu dự phòng transaction log cho phépphục hồi cơ sở dữ liệu vào một thời diểm nhất định hoặc có sự cố xảy ra
1.4 Các file log ảo
Mỗi một transaction log được chia thành các đoạn nhỏ hơn một cách logicđược gọi là các file ảo
1.5 Các vấn đề cần xem xét khi thiết kế một cơ sở dữ liệu
Bảo đảm tính toàn vẹn dữ liệu: Bao gồm tính toàn vẹn thực thể, tính toàn vẹnDomain, tính toàn vẹn tham chiếu, tính toàn vẹn người dùng ấn định
Bảo đảm an toàn dữ liệu: Một trong các chức năng của một cơ sở dữ liệu làbảo vệ dữ liệu bằng cách ngăn chặn những người sử dụng gây ra những lỗi lầmđáng kể Hệ thống đảm bảo an toàn trong Microsoft SQL Server 2000 điều khiển
Trang 19sự truy cập vào dữ liệu của người dùng, và cho phép để thực hiện các hoạt độngtrong cơ sở dữ liệu.
Bảo trì: Sau khi một cơ sở dữ liệu đã được tạo, tất cả các đối tượng và dữliệu được bổ sung vào và đang được sử dụng sẽ những có lúc bạn cần thực hiện bảotrì Để bảo trì một cơ sở dữ liệu ta cần thiết kế cơ sở dữ liệu càng nhỏ càng tốt vàloại bỏ thông tin dư thừa, thiết kế các bảng phân hoạch thay vì một bảng đơn, nếubảng này chứa nhiều bảng
Ước lượng kích cỡ của một cơ sở dữ liệu: bao gồm ước lượng kích cỡ củamột bảng không có kích cỡ Index nhóm
2 Tạo cơ sở dữ liệu:
Để tạo cơ sở dữ liệu, hãy xác định tên các cơ sở dữ liệu, người sở hữu(ngườitạo cơ sở dữ liệu), kích cỡ, các file và các filegoup dùng để chứa nó
Trước khi tạo một cơ sở dữ liệu cần xem xét:
Sự cho phép tạo một cơ sở mặc định của các thành viên có vai trò server cốđịnh như : Quản trị hệ thống và người tạo cơ sở dữ liệu, mặc dù sự cho phép có thểđược cấp cho những người sử dụng khác
Người tạo cơ sở dữ liệu là người sở hữu cơ sở dữ liệu
Có tối đa 32767 cơ sở dữ liệu được tạo trên một server
Tên của cơ sở dữ liệu phải tuân theo quy tắc nhận dạng
Có một số cách để tạo một cơ sở dữ liệu như sau:
1 Vào Query Analyzer: Vào File chọn New hoặc dùng câu lệnh SQL là:CREATE DATABASE database_name
2.Vào Enterprise Manager vào menu File chọn Action hoặc trên cửa sổ
chọn:
Microsoft SQL Server\ SQL Server Group\ database\ nháy phải chuột chọnNew Database
3.Các bảng và cách thiết kế các bảng
Trang 20Các bảng là các đối tượng cơ sở dữ liệu chứa tất cả các dữ liệu trong một cơ
sở dữ liệu Phần ấn định bảng là tập hợp các cột Trong các bảng, dữ liệu được sắpxếp theo dạng hàng và cột tương tự như một trang bảng tính Mỗi hàng tiêu biểucho một Record duy nhất, và mỗi cột tiêu biễu cho một trường(field) trong record
Khi thiết kế một cơ sở dữ liệu ta cần quyết định các bảng, kiểu dữ liệu trongmỗi bảng, ai có quyền truy nhập và các ràng buộc giữa các bảng
Cách tạo một bảng
Cách 1:Vào Query Analyzer:CREATE TABAL tên_bảng
Cách 2 : Vào Enterprise Manager: Tên CSDL\Tabal\ nháy phải chuột chọn Newtabale
Dữ liệu kiểu kí tự bao gồm sự kết hợp giữa các mẫu ký tự, ký hiệu và các ký tự
số Trong SQL Server 2000, dữ liệu ký tự được chứa bằng cách sử dụng các dữ liệuchar, varchar, text, nchar, nvarchar, ntext
4.3 Dữ liệu ngày tháng và thời gian
Dữ liệu ngày tháng và thời gian bao gồm sự kết hợp hợp lệ giữa các ngày tháng
và thời gian, dữ liệu ngày tháng và thời gian được chứa bằng cách sử dụng các kiểu
dữ liệu datetime và small datetime
4.4 Dữ liệu kiểu số
Dữ liệu kiểu số bao gồm chỉ các số, dữ liệu, số bao gồm các số âm và số dương,
số thập phân và phân số, và các số nguyên
4.5 Dữ liệu kiểu số nguyên
Dữ liệu số nguyên gồm các số nguyên âm hay dương, dữ liệu số nguyên đượcchứa bằng cách sử dụng các kiểu dữ liệu bigint(-2^63 đến 2^63 + 1: Kích cỡ lưu
Trang 21trữ là 8 byte), int( -2147483648 đến 2147483647: kích cỡ lưu trữ là 4 byte),smallint( 32768 đến 32767: Kích cỡ lưu trữ là 2 byte)
4.6 Dữ liệu thập phân và phân số
Dữ liệu thập phân bao gồm dữ liệu được chứa đến chữ số có nghĩa nhỏ nhất
Dữ liệu thập phân được chứa bằng cách sử dụng các kiểu dữ liệu decimal hoặcnumberic
4.7 Dữ liệu số gần đúng
Dữ liệu số gần đúng(dấu chấm động) bao gồm dữ liệu được bảo quản mộtcách chính xác như hệ thống đánh số nhị phân cung cấp Dữ liệu gần đúng đượcchứa bằng cách sử dụng kiểu dữ liệu float và real
4.8 Dữ liệu kiểu tiền tệ
Dữ liệu kiểu tiền tệ được chứa bằng cách sử dụng dữ liệu
money(-9223372036854778508 đến +9223372036854778507: yêu cầu 8 byte để lưu 1 giátrị) và smallmoney( -2147483648 đến+2147483647: yêu cầu 4 byte để lưu trữ mộtgiá trị), dữ liệu tiền tệ có thể được chứa đến độ chính xác là 4 chữ só thập phân
4.9 Một số kiểu dữ liệu đặc biệt khác
Ngoài các kiểu dữ liệu đã trình bày ở trênthì SQL Server còn có một số kiểu
dữ liệu khác như: timestamp, bit, uniquedentifier, table, user-define
5.1 Các ràng buộc khoá chính( Constraint Primary Key)
Một bảng thường có một hay nhiều cột với các giá trị riêng để nhận biết mỗihàng trong bảng Cột này(hay các cột) được gọi là khoá chính của bảng và tính toànvẹn thực thể của bảng Một bảng chỉ có một khoá chính, Microsoft SQL Server
Trang 222000 đảm bảo tính duy nhất của dữ liệu bằng cách tạo một chỉ sốduy nhất cho mộtkhoá chính.
5.2 Các ràng buộc khoá ngoại(Constraint Foreign Key)
Một khoá ngoại là một cột hay sự kết hợp giữa các cột được sử dụng để thiếtlập và tuân theo một liên kiết giữa các dữ liệu trong hai bảng Một liên kết được tạo
ra giữa hai bảng bằng cách bổ sung thêm một hay nhiều cột có chứa giá trị khoáchính của một bảng vào một bảng khác Cột này trở thành khoá ngoại trong bảngthứ hai
5.3 Các ràng buộc duy nhất(Constraint Unique)
Bạn có thể sử dụng các ràng buộc duy nhất đểbảo đảm không có giá trị saonào được nhập vào các cột nhất định vốn không nằm trong một khoá ngoại Mặc dù
cả ràng buộc khoá chính và ràng buộc duy nhất đều tuân theo tính duy nhất, nhưnghãy sử dụng ràng buộc duy nhất khi bạn muốn đảm bảo tính duy nhất của một cột(hay sự kết hợp giữa các cột) không phải là khoá chính, nhiều ràng buộc duy nhất
có thếan định trên một bảng, các ràng buộc duy nhất có thể được ấn định trên cáccột giá trị Null Một ràng buộc duy nhất cũng có thể tham chiếu bởi một ràng buộckhoá chính
5.4 Các ràng buộc kiểm tra(Constraint Check)
Các ràng buộc kiểm tra tuân theo tính toàn vẹn vùng(domain) bằng cách giớihạn các giá trịđược chấp nhận bởi một cột Chúng tương tự các ràng buộc khoáchính ở điểm chúng điều khiển các các giá trị được đặt trong một cột Điểm đặcbiệt là ở cách chúng xác định các giá trị nào hợp lệ: Các ràng buộc khoá chính lấydanh sách các giá trị từ một bảng khác, các ràng buộc kiểm tra xác định các giá trịhợp lệ từ một biểu thức logic vốn không dựa vào dữ liệu có trong cột khác
Các khung nhìn (View) và các trường hợp sử dụng khung nhìn
Các khung nhìn
Một khung nhìn là một bảng ảo có các nội dung được ấn định bởi một câunghi vấn (query) Giống như một bảng thật, một khung nhìn có một tập các cột các
Trang 23hàng dữ liệu đã được đặt tên.Tuy nhiên, một khung nhìn không tồn tại với một tậphợp các giá trị dữ liệu có sẵn trong một cơ sở dữ liệu Các hàng và các cột dữ liệuxuất phát từ các bảng dữ liệu được tham chiếu trong các câu truy vấn ấn địnhkhung nhìn và được tạo động khi khung nhìn được tham chiếu.
Một khung nhìn có tác dụng như một bộ lọc trên các bảng nền được thamchiếu trong khung nhìn Câu truy vấn ấn định có thể xuất phát từ một hay nhiềukhung nhìn khác trong cơ sở dữ liệu hiện hành hay các cơ sở dữ liệu khác
Các trường hợp sử dụng khung nhìn
1.1 Tập trung vào dữ liệu nhất định
Các khung nhìn cho phép người sử dụng tập trung vào dữ liệu nhất định và
có các tác vụ nhất định mà họ đang đảm trách Điều này cũng làm tăng tính an toàncho cơ sở dữ liệu
2.2 Đơn giản hoá cách sử lý dữ liệu
Khung nhìn có thể đơn giản hoá cách xử lý dữ liệu của người sử dụng Bạn
có thể ấn định các phép hợp, phép chiếu, và các câu truy vấn Select thường đượcdùng làm khung xem để người sử dụng không cần chỉ định tất cả các điều lệnh vàtiêu chuẩn mỗi khi thực hiện một thao tác bổ sung trên cơ sở dữ liệu đó
Trang 24Server\Tên Server\Tên cơ sở dữ liệu\ chọn Views nháy phải chuột để chọn NewView.
Trang 25chương3 khảo sát hệ thống
I Tìm hiểu bài toán
1 Cơ cấu tổ chức, hoạt động của khoa phẫu thuật thần kinh
Bệnh viện Việt Đức địa chỉ tại 40 Tràng Thi, Hà Nội, với bề dày lịch sử 95năm là nơi khởi nguồn đào tạo ra các thế hệ thầy thuốc Việt Nam đầu tiên, là mộtbệnh viện vủa cách mạng- bệnh viện phẫu thuật chuyên sâu, với tên tuổi của hainhà phẫu thuật nổi tiếng Hồ Đắc Di và Tôn Thất Thùng Hiện nay mỗi năm trungbình khám bệnh 98000 ca, điều trị nội trú 14000 ca, phẫu thuật 16000 ca Ngoài racòn tham gia mổ tại một số bệnh viện ở Hà Nội và một số bệnh viện ở các tỉnhtrong cả nước Để phục vụ 500 giường bệnh, bệnh viện luôn phấn đấu không ngừngnâng cao trình độ chuyên môn
Trong bệnh viện Việt Đức có các khoa: 1A-khoa phẫu thuật thầnkinh(PTTK), 1B-khoa tim mạch, khoa nhi, 3+4-khoa cấp cứu tiêu hoá, 5+6-khoachấn thương chỉnh hình, 7+8- khoa cấp cứu bụng, 13-khoa nhiễm khuẩn, 14-khoatiết niệu, 16+17-khoa gan mật, khoa ngoại, 1C-khoa điều trị theo yêu cầu, HSSM-khoa hồi sức sau mổ
Trong đó khoa PTTK với 36 giường bệnh, 40 nhân viên
1.1 Cơ cấu tổ chức của khoa Phẫu thuật thần kinh
Chủ nhiệm khoa
nhân
Trang 26+Chủ nhiệm khoa: Điều hành chung cho toàn bộ các công tác trong khoa.+Văn phòng: Giải đáp các thắc mắc của bệnh nhân, nơi tiếp nhận bệnh nhân
và là nơi lưu trữ hồ sơ bệnh án của bệnh nhân trong quá trình điều trị tại khoa
+Phòng bệnh nhân: Là nơi để bệnh nhân điều trị bệnh tật
1.2 Qui trình của việc làm bệnh án được tiến hành như sau ở khoa Phẫu thuật thần kinh:
1 Bác sỹ khám bệnh cho bệnh nhân, chụp chiếu bệnh nhân là do kĩ thuậtviên, xét nghiệm là do kĩ thuật viên hoặc tá
2 Đóng tiền viện phí vào viện- tài chính kế toán sẽ thu
3 Phân loại bệnh nhân(xem bệnh nhân thuộc về chuyên khoa nào)
4 Chuyển bệnh nhân vào khoa
Nếu khám bệnh mà bệnh nhân phải vào viện thì bệnh án sẽ được làm từphòng khám sau đó chuyển theo từng chuyên khoa Và bệnh nhân nếu phải vàoviện thì mới có phiếu vào viện và bệnh án ngoại Trong trường hợp bệnh nhân đếnkhám lại sau một khoảng thời gian được hẹn trước thì không làm bệnh án mới, cònnếu sau một khoảng thời gian dài lại phải vào viện thì sẽ được làm tờ bệnh án mới
và tờ bệnh án cũ làm nhiệm vụ so sánh với tờ bệnh án mới
Khi bệnh nhân vào viện sẽ được phân theo từng chuyên khoa
Về khoa nào thì y tá văn phòng quản lý hồ sơ bệnh án đó
Hằng ngày y tá văn phòng báo cáo bệnh nhân vào viện, ra viện lên phòng vitính
Những bệnh nhân ra viện phòng vi tính sẽ in ra một bản danh sách các bệnhnhân(ra theo ngày)
Hồ sơ bệnh án của bệnh nhân ra viện sẽ được các bác sỹ tổng kết, y tá vănphòng kiểm tra và xin chữ ký của chủ nhiệm khoa Sau đó sẽ xếp theo thứ tự ngày
ra hồ sơ kèm theo phim ảnh và chuyển xuống phòng lưu trữ hồ sơ
ở đây máy vi tính chỉ nhập một số thông tin về bệnh nhân vào viện, ra việnchứ không lưu tất cả hồ sơ bệnh án của bệnh nhân
Trang 27Khi cần hồ sơ bệnh án thì phải tra ngày ra viện sau đó xuống phòng lưu trữ
hồ sơ để mượn, họ sẽ tra ngày ra và số lưu trữ sau đó mới tìm được hồ sơ cũ cầnmượn
Bệnh nhân không được phép giữ bệnh án, mà bệnh án được lưu trữ ở phòng
2 Phạm vi của hệ thống
- Trong một khoa: khoa Phẫu thuật thần kinh
- Dữ liệu: Dùng cơ sở dữ liệu trong Access
- Công cụ lập trình: Dùng ngôn ngữ Visual Basic
4 Khả năng tin học hoá
Với sự tốn kém về thời gian và nhân lực cho hệ thống quản lý thủ công Đơn
vị cần xây dựng một hệ thống thông tin tự động giải quyết đa phần công việc nhằmkhắc phục những nhược điểm của hệ thống quản lý cũ
Trong thực trạng hiện nay khoa PTTK bệnh viện Việt Đức có đủ điều kiện
để xây dựng một hệ thống quản lý hồ sơ bệnh án ngoại bằng máy tính
+Văn phòng đã được trang bị máy tính có cấu hình mới
Trang 28+Các nhân viên của văn phòng được phổ cập kiến thức về sử dụng máy tính.
Như vậy với các yếu tố trên đã đủ điều kiện để xây dựng một hệ thống thôngtin quản lý hồ sơ bệnh án ngoại bằng máy tính
II nghiên cứu xây dựng chương trình
1 Mục đích của đề tài
Qua nghiên cứu mô hình và cách quản lý của khoa Phẫu thuật thần kinh củabệnh viện Việt Đức ta cần phải xây dựng phần mềm”quản lý bệnh án ngoại”
với mục đích sau:
+Tự động hoá quá trình quản lý bệnh nhân của khoa PTTK
+Lưu trữ các thông tin liên quan đến bệnh nhân đã và đang điều trị tại khoaPhẫu thuật thần kinh
+Cập nhật sửa đổi các thông tin liên quan đến bệnh nhân: lí lịch, ngày vào-raviện, bệnh án, tờ điều trị
+Tạo, cập nhật sửa đổi các thông tin về bệnh nhân
+In danh sách bệnh nhân ra viện theo từng ngày
+In danh sách bệnh nhân vào viện theo từng ngày
+In danh sách bệnh nhân chuyển từ nơi khác đến theo từng ngày
+In danh sách bệnh nhân chuyển đi nơi khác theo từng ngày
+In danh sách bệnh nhân tử vong theo từng ngày
2 Các chức năng của hệ thống
2.1 Chức năng cập nhật
Để hệ thống có dữ liệu thống nhất phục vụ cho việc quản lý, trước hết phảicung cấp cho hệ thống một số thông tin chung, để thuận tiện cho quá trình xử lý,các thông tin này được truy xuất thông qua mã của chúng và phải nhập vào hồ sơnhư sau:
+Cập nhật danh sách bệnh nhân
+Nhập vào hồ sơ bệnh nhân mới chuyển đến
Trang 29+Cập nhật các thông tin về diễn biến bệnh của bệnh nhân.
+Cập nhật quá trình điều trị của bệnh nhân
2.2 Chức năng xử lý
Với các dữ liệu đã cập nhật, để đáp ứng các nhu cầu đã đặt ra ta cần phải xử
lý các dữ liệu này Theo yêu cầu quản lý trong đơn vị hệ thống cần có chức năng
xử lý như sau:
*Chức năng tra cứu
Tra cứu thông tin theo yêu cầu của người sử dụng như:
+ Tra cứu bệnh nhân chết
+ Tra cứu bệnh nhân chuyển từ nơi khác đến
+ Tra cứu bệnh nhân chuyển đi nơi khác
+ Tra cứu bệnh nhân vào viện
+ Tra cứu bệnh nhân ra viện
*Chức năng báo cáo
Từ những nguồn dữ liệu đã cập nhật như trên hệ thống sẽ đưa ra các bản báo cáothống kê tổng quát hay chi tiết về bệnh nhân của khoa PTTK tuỳ theo yêu cầu lựachọn, cụ thể như:
+Lập danh sách của bệnh nhân toàn khoa PTTK vào theo ngày
+Lập danh sách bệnh nhân chết của toàn khoa PTTK theo ngày
+Lập danh sách bệnh nhân chuyển đi nơi khác của toàn khoa PTTK theo ngày.+Lập danh sách bệnh nhân chuyển từ nơi khác đến của toàn khoa PTTK theo ngày.+Lập danh sách bệnh nhân ra theo ngày của toàn khoa PTTK
Trang 303 Yêu cầu đối với hệ thống
Hệ thống phải quản lý được toàn bộ hồ sơ bệnh án ngoại của các bệnh nhântrong khoa PTTK bảo đảm tính toàn vẹn dữ liệu
Hệ thống cho phép tra cứu bệnh nhân theo một tiêu chí nhất định theo tên,địa chỉ, mã
Cho phép sửa đổi, cập nhật dữ liệu, đảm bảo có sàng lọc dữ liệu
In danh sách của bệnh nhân: ra- vào viện theo từng ngày, chuyển từ nơi khácđến, chuyển đi nơi khác và bệnh nhân chết
Trang 31chương 4 phân tích hệ thống
1.Biểu đồ phân cấp chức năng( Trang sau)
Đặc tả chức năng
+Chức năng: Quản lý bệnh án ngoại
Mô tả: Đây là hệ thống quản lý Bệnh án ngoại được xây dựng để quản lý các thayđổi về Bệnh án của bệnh nhân
Thông tin vào: Các sự kiện thay đổi về thông tin bệnh án của bệnh nhân
Thông tin ra: Các báo cáo
+Chức năng: Cập nhật dữ liệu
Mô tả: Cập nhật các thông tin của bệnh nhân trong khoa
Thông tin vào: Thông tin về sự thay đổi của bệnh nhân:
-Cập nhật khi có sự thay đổi như: Tiếp nhận bệnh nhân mới, bệnh nhân ra viện haychuyển sang bệnh viện khác
-Các thông tin thường xuyên thay đổi như: tình hình sức khoẻ của bệnh nhân -Loại bỏ nhữmg thông tin không cần thiết đối với một bệnh nhân
Thông tin ra: Cung cấp các thông tin về bệnh nhân trong khoa
+Chức năng: Tra cứu
Mô tả: Tra cứu các thông tin của bệnh nhân khi có yêu cầu
Thông tin vào: Dữ liệu yêu cầu tra cứu
Thông tin ra: Kết quả tra cứu
+Chức năng : Báo cáo
Mô tả: Báo cáo thông tin về bệnh nhân điều trị nội trú theo ngày, theo tuần, theotháng
Thông tin vào: Thông tin về bệnh nhân
Thông tin ra: Các báo cáo về số bệnh nhân: vào, ra viện, chuyển đi nơi khác,chuyển từ nơi khác đến và bệnh nhân chết trong khoa PTTK
Trang 332 Biểu đồ luồng dữ liệu
2.1 Biểu đồ luồng dữ liệu mức khung cảnh
1 Yêu cầu thông tin bệnh nhân
2 Nội dung thông tin
5 Kết quả
6.Yêu cầu kiểm tra
7 Kết quả
8.Yêu cầu có chữ ký
9 Nội dung sau cập nhật
10.Yêu cầu cập nhật thông tin
6
Bác sỹ khám bệnh
5 5
Trang 342.2 Biểu đồ luồng dữ liệu mức đỉnh
1.Yêu cầu
2.Trả lời
3.Báo cáo bệnh nhân ra-vào viện
4.Dữ liệu tra cứu
5.Kết quả tra cứu
5
1
1
54
Tờ điều
trị
Y tá văn phòng
Nhân viên tin họcHSBN
Cập nhật
dữ liệu
Phiếu vào viện
HSBN
BAN
Phiếu ra viện
Phiếu vào viện
1
Trang 352.3 Biểu dồ luồng dữ liệu mức dưới đỉnh
Phân rã chức năng 1: Cập nhật dữ liệu
1.Kết quả
2.Yêu cầu về thông tin
Phân rã chức năng 2: Tra cứu
2 2
1
2 1 1
1
2
ngoại1.1
2
HSBN
Phiếu vào viện
HSBN
Y tá văn phòng
Tổng kết bệnh án 1.2
HSBN
Nhân viên tin học Cập
nhật
hồ sơ bệnh nhân
Cập nhật phiếu vào viện
Cập nhật bệnh án
Cập nhật
tờ điều trị
Bệnh án ngoại1.1
Bệnh án ngoại1.1
Trang 361 Dữ liệu yêu cầu tra cứu
Phiếu ra viện
Bệnh án
ngoại
Bác sỹ khám bệnh
Tra cứu thông
ngày ra viện
Y tá văn phòng
Bác sỹ điều trị
Nhân viên tin học
Trang 37Phân rã chức năng 3: Báo cáo, thống kê
1 Yêu cầu báo cáo
viện
Báo cáo bệnh nhân chết
Báo cáo bệnh nhân chuyển
nhân chuyển
từ nơi khác đến
Báo cáo bệnhnhân vào viện
Y tá văn
phòng
Nhân viên tin học
Nhân viên tin học
Y tá văn phòng
BAN
HSBN
Phiếu ra viện
Tờ điều trị
Phiếu vào
viện
Trang 38-Đối tượng cần báo tin
Phiếu vào viện(PVV)
Trang 39-Mã bệnh nhân
-Mã phiếu vào viện
-Tuyến dưới
-Cấp cứu, KKB
-Trước phẫu thuật
-Sau phẫu thuật
-Ngày điều trị trước phẫu thuật-Tổng số lần phẫu thuật
-Mthuốc lá_mã-thời gian
-Mrượu, bia-mã-thời gian
-Mma tuý-mã-thời gian
Trang 40-Mô tả chi tiết cơ quan bệnh lý
Chi tiết bệnh án xét nghiệm(CTBAXN)
-Mã bệnh án ngoại
-huyết học-mã-kết quả
-hoá sinh-mã-kết quả
-vi sinh-mã-kết quả
-Xquang-ma-kết quả
-Siêu âm-mã-kết quả
-nội soi-mã-kết quả