Xem mẫu
- Lời nói đầu
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 nhưng vốn kiến thức chưa 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.
- 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
Chương I: Giới Thiệu Nội Dung Đề Tài
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 lưu 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.
- + 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ẽ lưu 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ế.
- Những yêu cầu cần giải quyết
3.
- 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.
- Đố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à chưa đó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 lưu 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ơ lưu trữ, chưa 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ả...
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, nhưng lại rất hữu hiệu. Ngày nay nó chưa 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.
Chương II. Giới thiệu ngôn ngữ cài đặt hệ thống
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ảấn Bản
SQL Server 2000 Đây là phần chính của hệ thống, là trung tâm đ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. Desktop
Engine Personal Standard Developer Enterprise
Đây là ph ần tự chọn trong lúc cài đặt, nếu bạn muốn
Full – Text Sarch
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 đó. Personal (Except Win95) Standard Developer Enterprise
- 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 đặt câu hỏi chuỗi English
sau đó được dịch ra Query mà có thể thực thi trên SQL Server. Personal
Standard Developer Enterprise
Ph ần n ày không bao gồm mặc định trong phần cài đặt,
Analusis Services
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. 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ứ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. Desktop Engine Personal Standard Developer Enterprise
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. 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 lưu 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 lưu 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 - d efined 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.
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 lưu 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,
nhưng với cơ sở dữ liệu Msdb thì khác. Msdb chính là SQL Agent lưu 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.
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 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à đố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 lưu 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
View là khung nhìn (hay bảng ảo) của bảng. Cũng giống như bảng nhưng
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 lưu 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
FROM
[WHERE ]
[GROUP BY ]
[HAVING ]
[ORDER BY ]
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, ...
- 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 (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
SET =
WHERE
- 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
WHERE
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. 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
[ON[PRIMARY](
- [Name=,]
File Name=
[,SIZE=
- - 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
(
[[DEFAULT ]
[[IDENTITY (seed, increament) [NOT FOR REPLICATION]]]]
[ROWGUIDCOL]
[NULL | NOT NULL]
[]
[column_name as computed_columns_expression
.....
)
ON {> | 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ị.
- 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 lưu 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
[ [VARYING]
[=][OUT PUT],
[ [VARYING]
[=][OUT PUT][,
............
............
[WITH
RECOMPILE | ENCRIPTION | RECOMPILE, ENCRIPTION]
[FOR REPLICATION]
AS
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),
nguon tai.lieu . vn