PHẦN I: KỊCH BẢN THẾ GIỚI THỰCI.Ứng dụng của hệ cơ sở dữ liệuQua khảo sát hoạt động của bệnh viện ta thấy cần phải quản lý dữ liệu việc khámbệnh của bệnh khân khi đến bệnh viện, thông ti
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNGKHOA CÔNG NGHỆ THÔNG TIN
Giảng viên hướng dẫn: Phan Thị Hà
Hà Nội - 2023
Trang 2MỤC LỤC
Danh sách sinh viên 1
PHẦN I: KỊCH BẢN THẾ GIỚI THỰC 2
I Ứng dụng của hệ cơ sở dữ liệu 2
II Yêu cầu về dữ liệu cần được lưu trữ 2
III Các thao các trên cơ sở dữ liệu 2
PHẦN II: THIẾT KẾ CƠ SỞ DỮ LIỆU 3
I Lược đồ E-R 3
II Phân tích lược đồ E -R 5
PHẦN III: ÁNH XẠ LƯỢC ĐỒ E-R SANG LƯỢC ĐỒ QUAN HỆ VÀ CHUẨNHÓA 6
I Lược đồ quan hệ trước khi chuẩn hóa 6
II Các phụ thuộc hàm và khóa của từng lược đồ 8
III Chuẩn hóa 3NF 11
IV Lược đồ quan hệ sau khi chuẩn hóa 15
PHẦN IV: CÀI ĐẶT HỆ THỐNG 16
I Tạo database và các bảng, thêm dữ liệu vào từng bảng 17
II Các câu truy vấn, ứng dụng của hệ thống 35
Trang 3Danh sách sinh viênSTTMã sinh viênHọ và tên
1 B21DCCN603 Trần Lệ Phương2 B21DCCN335 Nguyễn Thị Thu Hiền3 B21DCCN601 Nguyễn Mai Phương4 B21DCCN157 Nông Triệu Lan Anh5 B21DCCN639 Nguyễn Thị Quyên6 B21DCCN507 Nguyễn Thị Mai Ly7 B21DCCN579 Trần Thị Phương Nhung8 B21DCAT045 Bùi Thị Quỳnh Chi9 B21DCCN246 Nguyễn Minh Đức10 B21DCCN055 Bùi Huy Hoàng
Trang 4PHẦN I: KỊCH BẢN THẾ GIỚI THỰCI.Ứng dụng của hệ cơ sở dữ liệu
Qua khảo sát hoạt động của bệnh viện ta thấy cần phải quản lý dữ liệu việc khámbệnh của bệnh khân khi đến bệnh viện, thông tin của bác sĩ làm việc trong bệnhviện, bệnh được chẩn đoán, loại xét nghiệm mà bệnh nhân phải làm, các loại thuốc,các loại điều trị, hóa đơn đóng tiền khi sử dụng dịch vụ, …
II.Yêu cầu về dữ liệu cần được lưu trữ
- Dữ liệu về Khoa bao gồm: Mã khoa, Tên khoa, Số lượng người.
- Dữ liệu về Bác sĩ bao gồm: Mã bác sĩ, Họ tên, Ngày sinh, Giới tính, Địa chỉ,Học hàm học vị, Số điện thoại.
- Dữ liệu về Bệnh nhân bao gồm: Mã bệnh nhân, Họ tên, Giới tính, Ngày sinh,Nghề nghiệp, Địa chỉ, Số điện thoại.
- Dữ liệu về Khoản chi phí bao gồm: Mã khoản CP, Tên khoản CP, Đơn giá.- Dữ liệu về Bệnh bao gồm: Mã bệnh, Tên bệnh, Triệu chứng.
- Dữ liệu về Thuốc bao gồm: Mã thuốc, Tên thuốc, Đơn vị, Cách dùng, Đơn giá.- Dữ liệu về các xét nghiệm Cận lâm sàng bao gồm: Mã CLS, Tên, Đơn giá- Dữ liệu về các xét nghiệm sinh hoá bao gồm: Kết quả bình thường
- Dữ liệu về các chẩn đoán hình ảnh bao gồm: Loại
- Dữ liệu về Dùng phòng bệnh gồm: Ngày bắt đầu, Ngày kết thúc, Mã dùngphòng
- Dữ liệu về các lần Điều trị gồm: Mã điều trị, Ngày bắt đầu, Ngày kết thúc, Kếtquả
- Dữ liệu về Kê đơn gồm: Mã kê đơn, Ngày kê đơn
- Dữ liệu về Làm xét nghiệm: Mã làm xét nghiệm, Ngày xét nghiệm, Kết quả xétnghiệm
- Dữ liệu về Thanh toán dịch vụ gồm: Mã thanh toán, Ngày thanh toán, Số lượng- Dữ liệu về Khám bệnh gồm: Mã khám, Ngày khám
- Dữ liệu về Phòng bệnh bao gồm: Tên phòng, Số lượng giường- Dữ liệu về Y lệnh bao gồm: Nội dung, Ngày thực hiện
III.Các thao các trên cơ sở dữ liệu
- Cập nhật thông tin bệnh nhân, bác sĩ, bệnh…: Thêm mới bệnh nhân, bác sĩ, bệnh…
Chỉnh sửa thông tin bệnh nhân, bác sĩ, bệnh… Xóa thông tin bệnh nhân, bác sĩ, bệnh…- Tra cứu thông tin bác sĩ, bệnh nhân…
Tìm kiếm theo tên Tìm kiếm theo khoa Tìm kiếm theo mã
Trang 5- Chức năng xem dữ liệu
Xem danh sách bệnh nhân
Xem hồ sơ bệnh án của một bệnh nhân Xem giường bệnh còn trống
Thống kê số lần khám, điều trị trong khoa
Thống kê bệnh nhân được khám bởi một bác sĩ nào đó Thống kê viện phí của bệnh nhân
Thống kê theo nghề nghiệp của bệnh nhân Thống kê các loại bệnh thường gặp
PHẦN II: THIẾT KẾ CƠ SỞ DỮ LIỆUI.Lược đồ E-R
Trang 7II.Phân tích lược đồ E -R
Lược đồ ER của mô hình quản lý bệnh viện gồm:
Có 9 tập thực thể mạnh: Khoa, Bác sĩ, Bệnh nhân, Khoản chi phí, Bệnh, Thuốc,Cận lâm sàng, Xét nghiệm, Chẩn đoán hình ảnh.
Thực thể liên kết Điều trị gồm thuộc tính: Mã điều trị (khóa), Ngày bắt
đầu, Ngày kết thúc, Kết quả
Thực thể liên kết Kê đơn gồm thuộc tính: Mã kê đơn (khóa), Ngày kê
Thực thể liên kết Làm xét nghiệm gồm thuộc tính: Mã làm xét nghiệm
(khóa), Ngày xét nghiệm, Kết quả xét nghiệm
Thực thể liên kết Thanh toán gồm thuộc tính: Mã thanh toán (khóa),
Ngày thanh toán, Số lượng
Thực thể liên kết Khám gồm thuộc tính: Mã khám (khóa), Ngày khám
Có 2 tập thực thể yếu: Phòng bệnh, Y lệnhChi tiết các thực thể yếu:
Thực thể Phòng bệnh bao gồm: Tên phòng (phân biệt), Số lượng giường.Thực thể Phòng bệnh cần phụ thuộc vào thực thể Khoa để xác định chínhxác một Phòng bệnh cụ thể => khóa bao gồm thuộc tính Tên phòng và thuộc tính Mã khoa.
Thực thể Y lệnh bao gồm: Nội dung (phân biệt), Ngày thực hiện Thực thể Y lệnh cần phụ thuộc vào Thực thể liên kết Điều trị để xác định chính xác và có ý nghĩa => Khóa của thực thể Y lệnh bao gồm thuộc tínhNội dung và thuộc tính Mã điều trị
Có 10 liên kết trong đó có 9 liên kết hai ngôi và 1 liên kết từ ba ngôi trở lên, 6 liên kết trở thành thực thể liên kết.
o Liên kết 2 ngôi:
Khoa và Phòng bệnh liên kết với nhau bằng liên kết Có
Khoa và Bác sĩ liên kết với nhau bằng liên kết Làm việc
Bệnh nhân và Phòng bệnh liên kết với nhau bằng liên kết Dùng
Trang 8 Bệnh nhân và Khoản chi phí liên kết với nhau bằng liên kết Thanh toán
Bệnh nhân và Cận lâm sàng liên kết với nhau bằng liên kết Làmxét nghiệm
Bệnh nhân và Bác sĩ liên kết với nhau bằng liên kết Kê đơn
Bác sĩ và Bệnh nhân liên kết với nhau bằng liên kết Điều trị
Điều trị và Y lệnh liên kết với nhau bằng liên kết Gồm
Kê đơn và Thuốc liên kết với nhau bằng liên kết Gồm
Liên kết ba ngôi:
Bác sĩ, Bệnh nhân, Bệnh liên kết với nhau bằng liên kết Khám
Trong đó
Liên kết Có không có thuộc tính
Liên kết Làm việc không có thuộc tính
Liên kết Gồm (Điều trị và Y lệnh) không có thuộc tính
Liên kết Gồm (Kê đơn và Thuốc) gồm thuộc tính: Số lượng
Có 1 tập quan hệ cha con đó là Cận lâm sàng là thực thể cha và Xét nghiệm vàChẩn đoán hình ảnh là hai thực thể con
PHẦN III: ÁNH XẠ LƯỢC ĐỒ E-R SANG LƯỢC ĐỒQUAN HỆ VÀ CHUẨN HÓA
I.Lược đồ quan hệ trước khi chuẩn hóa
Trang 10II.Các phụ thuộc hàm và khóa của từng lược đồKhoa (Mã khoa, Tên khoa, Số lượng người):
Khóa chính: Mã khoa Xác định phụ thuộc hàm:
F1 = {Mã khoa → Tên khoa; Mã khoa → Số lượng người}
Phòng bệnh (Tên phòng, Mã khoa, Số lượng giường):
Khóa chính: Tên phòng + Mã khoaKhóa ngoại: Mã khoa
Xác định phụ thuộc hàm:
F2 = {Tên phòng, Mã khoa → Số lượng giường}
Dùng (Mã dùng phòng, Mã bệnh nhân, Tên phòng, Mã khoa, Ngày bắt đầu,
Điều trị (Mã điều trị, Mã bác sĩ, Mã bệnh nhân, Kết quả, Ngày bắt đầu, Ngày kết thúc):
Khóa chính: Mã điều trị
Khóa ngoại: Mã bác sĩ, Mã bệnh nhân Xác định phụ thuộc hàm
F4 = {Mã điều trị → Mã bác sĩ; Mã điều trị → Mã bệnh nhân;Mã điều trị → Kết quả;
Mã điều trị → Ngày bắt đầu;Mã điều trị → Ngày kết thúc}
Y lệnh (Nội dung, Mã điều trị, Ngày thực hiện):
Khóa chính: Nội dung + Mã điều trịKhóa ngoại: Mã điều trị
Xác định phụ thuộc hàm:
F5 = {Nội dung, Mã điều trị → Ngày thực hiện}
Trang 11Bác sĩ (Mã bác sĩ, Họ tên, Ngày sinh, Giới tính, Địa chỉ, Học hàm học vị, Mã
Khóa chính: Mã bác sĩKhóa ngoại: Mã khoa Xác định phụ thuộc hàm:
F6 = {Mã bác sĩ → Họ tên; Mã bác sĩ → Ngày sinh;Mã bác sĩ → Giới tính; Mã bác sĩ → Địa chỉ;
Mã bác sĩ → Học hàm học vị; Mã bác sĩ → Mã khoa}
Bệnh (Mã bệnh, Tên bệnh, Triệu chứng):
Khóa chính: Mã bệnh Xác định phụ thuộc hàm:
F8 = {Mã bệnh → Tên bệnh, Triệu chứng}
Bệnh nhân (Mã bệnh nhân, Họ tên, Ngày sinh, Giới tính, Địa chỉ, Nghề
Khóa chính: Mã bệnh nhân Xác định phụ thuộc hàm:
F9 = {Mã bệnh nhân → Họ tên;Mã bệnh nhân → Ngày sinh; Mã bệnh nhân → Giới tính; Mã bệnh nhân → Địa chỉ;Mã bệnh nhân → Nghề nghiệp}
Bệnh nhân – số ĐT (Số điện thoại, Mã bệnh nhân):
Khóa chính: Mã bệnh nhân + Số điện thoạiKhóa ngoại: Mã bệnh nhân
Trang 12Kê đơn (Mã kê đơn, Mã bác sĩ, Mã bệnh nhân, Ngày kê đơn):
Khóa chính: Mã kê đơn
Khóa ngoại: Mã bác sĩ, Mã bệnh nhân Xác định phụ thuộc hàm:
F10 = {Mã kê đơn → Mã bác sĩ, Mã kê đơn → Mã bệnh nhân, Mã kê đơn → Ngày kê đơn}
Gồm (Mã kê đơn, Mã thuốc, Số lượng):
Khóa chính: Mã kê đơn + Mã thuốcKhóa ngoại: Mã kê đơn, Mã thuốc Xác định phụ thuộc hàm:
F11 = {Mã kê đơn, Mã thuốc → Số lượng}
Thuốc (Mã thuốc, Tên thuốc, Đơn vị, Cách dùng, Đơn giá):
Khóa chính: Mã thuốc Xác định phụ thuộc hàm:
F12 = {Mã thuốc → Tên thuốc; Mã thuốc → Đơn vị; Mã thuốc → Đơn giá;
Mã thuốc → Cách dùng}
Thanh toán (Mã thanh toán, Mã bệnh nhân, Mã khoản CP, Số lượng, Ngày
thanh toán):
Khóa chính: Mã thanh toán
Khóa ngoại: Mã bệnh nhân, Mã khoản CP Xác định phụ thuộc hàm:
F13 = {Mã thanh toán → Mã bệnh nhân; Mã thanh toán → Mã khoản CP; Mã thanh toán → Số lượng;
Mã thanh toán → Ngày thanh toán}
Khoản chi phí (Mã khoản CP, Tên khoản CP, Đơn giá):
Khóa chính: Mã khoản CP Xác định phụ thuộc hàm:
F14 = {Mã khoản CP → Tên khoản CP; Mã khoản CP → Đơn giá}
Làm xét nghiệm (Mã xét nghiệm, Mã bệnh nhân, Mã CLS, Ngày xét nghiệm,
Kết quả xét nghiệm):
Khóa chính: Mã xét nghiệm
Khóa ngoại: Mã bệnh nhân, Mã CLS
Trang 13 Xác định phụ thuộc hàm:
F15 = {Mã xét nghiệm → Mã bệnh nhân; Mã xét nghiệm → Mã CLS;
Mã xét nghiệm → Ngày xét nghiệmMã xét nghiệm → Kết quả xét nghiệm}
Cận lâm sàng (Mã CLS, Tên dịch vụ, đơn giá):
Khóa chính: Mã CLS Xác định phụ thuộc hàm:
F16 = {Mã CLS → Tên dịch vụ Mã CLS → Đơn giá}
Xét nghiệm (X-mã CLS, Kết quả bình thường):
Khóa chính: X-mã CLS Xác định phụ thuộc hàm:
F17 = {X-mã CLS → Kết quả bình thường}
Chuẩn đoán hình ảnh (C-mã CLS, Loại):
Khóa chính: C-mã CLS Xác định phụ thuộc hàm:
F18 = {C-mã CLS → Loại}
III.Chuẩn hóa 3NF
Khoa (Mã khoa, Tên khoa, Số lượng người):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Các thuộc tính không khóa là “Tên khoa”, “Số lượng người” đều phụ thuộc đầy đủ vào khóa chính là “Mã khoa”
Đạt chuẩn 3NF: Các thuộc tính không khóa là “Tên khoa”, “Số lượng người” chỉ phụ thuộc trực tiếp vào khóa chính là “Mã khoa”
Phòng bệnh (Tên phòng, Mã khoa, Số lượng giường):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Thuộc tính không khóa là “Số lượng giường” phụ thuộc đầyđủ vào khóa chính
Đạt chuẩn 3NF: Chỉ có duy nhất 1 thuộc tính không khóa và thuộc tính này phụ thuộc trực tiếp vào khóa chính
Trang 14Dùng (Mã dùng phòng, Mã bệnh nhân, Tên phòng, Mã khoa, Ngày bắt đầu, Ngày
“Ngày kết thúc” đều phụ thuộc trực tiếp vào khóa chính là “Mã điều trị”
Y lệnh (Nội dung, Mã điều trị, Ngày thực hiện):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Thuộc tính không khóa là “Ngày thực hiện” phụ thuộc đầy đủ vào khóa chính
Đạt chuẩn 3NF: Chỉ có duy nhất 1 thuộc tính không khóa và thuộc tính này phụ thuộc trực tiếp vào khóa chính
Bác sĩ (Mã bác sĩ, Họ tên, Ngày sinh, Giới tính, Địa chỉ, Học hàm học vị, Mã
khoa):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị Thuộc tính đa trị như “Số điện thoại” đã được tách ra thành 1 lược đồ riêng (gồm các thuộc tính đơn trị) từ đầu
Đạt chuẩn 2NF: Các thuộc tính không khóa là “Họ tên”, “Ngày sinh”, “Giới tính”, “Địa chỉ”, “Học hàm học vị” đều phụ thuộc đầy đủ vào khóa chính là “Mã bác sĩ”
Đạt chuẩn 3NF: Các thuộc tính không khóa là “Họ tên”, “Ngày sinh”, “Giới tính”, “Địa chỉ”, “Học hàm học vị” đều phụ thuộc trực tiếp vào khóa chính là “Mã bác sĩ”
Trang 15Bệnh nhân (Mã bệnh nhân, Họ tên, Ngày sinh, Giới tính, Địa chỉ, Nghề nghiệp):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị Thuộc tính đa trị như “Số điện thoại” đã được tách ra thành 1 lược đồ riêng (gồm các thuộc tính đơn trị) từ đầu
Đạt chuẩn 2NF: Các thuộc tính không khóa là “Họ tên”, “Ngày sinh”, “Giới tính”, “Địa chỉ”, “Nghề nghiệp” đều phụ thuộc đầy đủ vào khóa chính là “Mã bệnh nhân”
Đạt chuẩn 3NF: Các thuộc tính không khóa là “Họ tên”, “Ngày sinh”, “Giới tính”, “Địa chỉ”, “Nghề nghiệp” đều phụ thuộc trực tiếp vào khóa chính là “Mã bệnh nhân”
Bệnh nhân – số ĐT (Số điện thoại, Mã bệnh nhân):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF, 3NF: Vì cả hai thuộc tính hợp thành một khóa chính nên không có thuộc tính không khóa nào, do đó thỏa mãn các thuộc tính không khóa phụ thuộc đầy đủ (2NF) và trực tiếp (3NF) vào khóa chính.
Kê đơn (Mã kê đơn, Mã bác sĩ, Mã bệnh nhân, Ngày kê đơn):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Thuộc tính không khóa là “Ngày kê đơn” vào khóa chính là“Mã kê đơn”
Đạt chuẩn 3NF: Chỉ có duy nhất 1 thuộc tính không khóa và thuộc tính này phụ thuộc trực tiếp vào khóa chính là “Mã kê đơn”
Trang 16Gồm (Mã kê đơn, Mã thuốc, Số lượng):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Thuộc tính không khóa là “Số lượng” phụ thuộc đầy đủ vàokhóa chính
Đạt chuẩn 3NF: Chỉ có duy nhất 1 thuộc tính không khóa và thuộc tính này phụ thuộc trực tiếp vào khóa chính
Thuốc (Mã thuốc, Tên thuốc, Đơn vị, Cách dùng, Đơn giá):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Các thuộc tính không khóa là “Tên thuốc”, “Đơn vị”, “Cáchdùng” , ”Đơn giá”đều phụ thuộc đầy đủ vào khóa chính là “Mã thuốc” Đạt chuẩn 3NF: Các thuộc tính không khóa là “Tên thuốc”, “Đơn vị”, “Cách
dùng”, “Đơn giá” đều phụ thuộc trực tiếp vào khóa chính là “Mã thuốc”
Thanh toán (Mã thanh toán, Mã bệnh nhân, Mã khoản CP, Số lượng, Ngày thanh
Khoản chi phí (Mã khoản CP, Tên khoản CP, Đơn giá):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Các thuộc tính không khóa là “Tên khoản CP”, “Đơn giá” đều phụ thuộc đầy đủ vào khóa chính là “Mã khoản CP”
Đạt chuẩn 3NF: Các thuộc tính không khóa là “Tên khoản CP”, “Đơn giá” đều phụ thuộc trực tiếp vào khóa chính là “Mã khoản CP”
Làm xét nghiệm (Mã xét nghiệm, Mã bệnh nhân, Mã CLS, Ngày xét nghiệm, Kết
xét nghiệm” đều phụ thuộc trực tiếp vào khóa chính là “Mã xét nghiệm”
Trang 17Cận lâm sàng (Mã CLS, Tên dịch vụ, Đơn giá):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Thuộc tính không khóa là “Tên dịch vụ”, “Đơn giá” phụ thuộc đầy đủ vào khóa chính là “Mã CLS”
Đạt chuẩn 3NF: Chỉ có duy nhất 1 thuộc tính không khóa và thuộc tính này phụ thuộc trực tiếp vào khóa chính là “Mã CLS”
Xét nghiệm (X-mã CLS, Kết quả bình thường):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Thuộc tính không khóa là “Kết quả bình thường” phụ thuộcđầy đủ vào khóa chính là “X-mã CLS”
Đạt chuẩn 3NF: Chỉ có duy nhất 1 thuộc tính không khóa và thuộc tính này phụ thuộc trực tiếp vào khóa chính là “X-mã CLS”
Chuẩn đoán hình ảnh (C-mã CLS, Loại):
Đạt chuẩn 1NF: Có khóa chính, các thuộc tính đều là nguyên tố, không có thuộc tính dẫn xuất, đa trị
Đạt chuẩn 2NF: Thuộc tính không khóa là “Loại” phụ thuộc đầy đủ vào khóa chính là “C-mã CLS”
Đạt chuẩn 3NF: Chỉ có duy nhất 1 thuộc tính không khóa và thuộc tính này phụ thuộc trực tiếp vào khóa chính là “C-mã CLS”
IV Lược đồ quan hệ sau khi chuẩn hóa
Do các lược đồ đã được chuẩn hóa 3NF, vì vậy ta không có thay đổi gì đối vớilược đồ quan hệ:
Trang 18PHẦN IV: CÀI ĐẶT HỆ THỐNG
Từ 20 lược đồ ở dạng chuẩn 3NF, ta xây dựng 20 bảng dữ liệu
Trang 19I Tạo database và các bảng, thêm dữ liệu vào từng bảng
Tao
Trang 20DATABASE -CREATEDATABASE QLBV COLLATE Latin1_General_100_CI_AS_SC_UTF8;
USE QLBV
Thêm dữ liệu vào các ba,ng đã tạo:
CREATEPROCEDURE ImportDataFromCSV @FilePath nvarchar(255),
@TableName nvarchar(255)
DECLARE @SqlCmd nvarchar(MAX);
SET @SqlCmd ='BULK INSERT ' +QUOTENAME(@TableName)+' ' +'FROM''' + @FilePath +''' ' +'WITH (FORMAT = ''CSV'',FIELDTERMINATOR = '', '', ROWTERMINATOR = ''\n'', FIRSTROW = 2, CODEPAGE =''65001'')';
END ;
Trang 211.Tạo bảng KHOA
CREATE TABLE KHOA
MaKhoa varchar(255) PRIMARY KEY,
TenKhoa nvarchar(255)NOTNULL,
SoLuongNguoi int NOTNULL,)
EXEC ImportDataFromCSV 'D:\DATA\KHOA.csv','KHOA';
Trang 222.Tạo bảng PHONGBENH
CREATE TABLE PHONGBENH
TenPhong nvarchar(255),
MaKhoa varchar(255) FOREIGN KEY REFERENCES KHOA(MaKhoa),
SoLuongGiuong smallint NOTNULL,
PRIMARY KEY(TenPhong, MaKhoa)
GO EXEC ImportDataFromCSV 'D:\DATA\PHONGBENH.csv',
'PHONGBENH';
Trang 233.Tạo bảng BACSI
CREATE TABLE BACSI
MaBacSi varchar(255) PRIMARY KEY,
HoTen nvarchar(255)NOTNULL,
NgaySinh date NOTNULL,
GioiTinh nvarchar(255)NOTNULL,
DiaChi nvarchar(255)NOTNULL,
HocVi varchar(255)NOTNULL,
MaKhoa varchar(255) FOREIGN KEY REFERENCES KHOA(MaKhoa))
EXEC ImportDataFromCSV 'D:\DATA\BACSI.csv','BACSI';
Trang 255.Tạo bảng BENH
CREATE TABLE BENH
MaBenh varchar(255) PRIMARY KEY,
TenBenh nvarchar(255)NOTNULL,
TrieuChung nvarchar(255)NOTNULL,)
EXEC ImportDataFromCSV 'D:\DATA\BENH.csv','BENH';
Trang 266.Tạo bảng BENHNHAN
CREATE TABLE BENHNHAN
MaBenhNhan varchar(255) PRIMARY KEY,
HoTen nvarchar(255)NOTNULL,
NgaySinh date NOTNULL,
GioiTinh nvarchar(255)NOTNULL,
DiaChi nvarchar(255)NOTNULL,
NgheNghiep nvarchar(255)NOTNULL,)
EXEC ImportDataFromCSV 'D:\DATA\BENHNHAN.csv','BENHNHAN';
Trang 28NgayBatDau date NOTNULL,
NgayKetThuc date NULL,
FOREIGN KEY(TenPhong, MaKhoa)
REFERENCES PHONGBENH(TenPhong, MaKhoa))
EXEC ImportDataFromCSV 'D:\DATA\DUNG.csv','DUNG';
Trang 29FOREIGN KEY REFERENCES BENHNHAN(MaBenhNhan),
KetQua nvarchar(255)NOTNULL,
NgayBatDau date NOTNULL,
NgayKetThuc date NULL,)
EXEC ImportDataFromCSV 'D:\DATA\DIEUTRI.csv','DIEUTRI'