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 (2.87 MB, 84 trang )
<span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">
Để hoàn thành bài đồ án môn học Hệ quản trị cơ sở dữ liệu 1 với đề tài “Quản trị cơ sở dữ liệu Nhà xuất bản Giáo dục Việt Nam”, chúng em xin chân thành cảm ơn và biết ơn sâu sắc đến Thạc sĩ Vũ Thị Thanh Hương – Giảng viên bộ môn Hệ quản trị cơ sở dữ liệu 1 đã tận tình hướng dẫn giúp đỡ chúng em trong quá trình thực hiện bài đồ án này.
Tuy nhiên, do sự hiểu biết cũng như kinh nghiệm của chúng em còn hạn chế. Chúng em rất mong sẽ được cô quan tâm và đóng góp ý kiến để chúng em hồn thiện tốt hơn cho các bài đồ án, nghiên cứu tiếp theo của chúng em.
Chúng em xin kính chúc Giảng viên phụ trách học phần – Thạc sĩ Vũ Thị Thanh Hương, cùng với giảng viên tham gia chấm điểm bài đồ án này lời chúc sức khỏe và hạnh phúc nhất.
Chúng em xin chân thành cảm ơn!
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><b>Structured Query LanguageSQL Server Reporting Services</b>
VietNam Education Publishing House Limited Company
Relation Database Management System Synonym
Công ty trách nhiệm hữu hạn một thành viên Nhà xuất bản Giáo dục Việt Nam Hệ thống quản trị cơ sở dữ liệu quan hệ Tên đồng nghĩa
Chỉ mục
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">Bảng 3. 1. Cơ sở dữ liệu tbBOPHAN...21
Bảng 3. 2. Cơ sở dữ liệu tbNHANVIEN...22
Bảng 3. 3. Cơ sở dữ liệu tbTACGIA...23
Bảng 3. 4. Cơ sở dữ liệu tbPHIEUCHI...24
Bảng 3. 5. Cơ sở dữ liệu tbXUONGIN...25
Bảng 3. 6. Cơ sở dữ liệu tbKHOSACH...26
Bảng 3. 7. Cơ sở dữ liệu tbCHITIETKHOSACH...27
Bảng 3. 8. Cơ sở dữ liệu tbPHIEUNHAPKHO...27
Bảng 3. 9. Cơ sở dữ liệu tbCHITIETPHIEUNHAPKHO...28
Bảng 3. 10. Cơ sở dữ liệu tbPHIEUXUATKHO...29
Bảng 3. 11. Cơ sở dữ liệu tbCHITIETPHIEUXUATKHO...30
Bảng 3. 12. Cơ sở dữ liệu tbPHIEUTHONGKE...31
Bảng 3. 13. Cơ sở dữ liệu tbTUASACH...33
Bảng 3. 14. Cơ sở dữ liệu tbHOPDONG...33
Bảng 3. 15. Cơ sở dữ liệu tbLOAIKHACHHANG...34
Bảng 3. 16. Cơ sở dữ liệu tbKHACHHANG...35
Bảng 3. 17. Cơ sở dữ liệu tbDONDATHANG...36
Bảng 3. 18. Cơ sở dữ liệu tbCHITIETDONDATHANG...37
Bảng 3. 19. Cơ sở dữ liệu tbPHIEUTHANHTOAN...38
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">Hình 2. 1. Quy trình nghiệp vụ của hệ thống...6
Hình 3. 2. Mơ hình dữ liệu mức quan niệm...12
Hình 3. 3. Mơ hình quan hệ dữ liệu...39
Hình 4. 4. Kết quả thực thi tên đồng nghĩa NV...41
Hình 4. 5. Kết quả thực thi tên đồng nghĩa KH...41
Hình 4. 6. Kết quả thực thi tìm các tựa sách có tên bắt đầu chữ 'S'...42
Hình 4. 7. Kết quả thực thi tìm các khách hàng có mã là ‘NS’...43
Hình 4. 8. Kết quả tìm kiếm tác giả có email ''...43
Hình 4. 9. Kết quả thực thi vw_DanhSachNhanVienNu...46
Hình 4. 10. Kết quả thực thi vw_KhachHangDonDatHang...47
Hình 4. 11. Kết quả thực thi vw_DoanhThuGiaoHang_6thang...47
Hình 4. 12. Kết quả thực thi vw_ThongTinDonDatHang...48
Hình 4. 13. Kết quả truy vấn vw_ThongTinSBIDuoi500...48
Hình 4. 14. Kết quả thực thi câu lệnh sp_NhanVienTheoMa...52
Hình 4. 15. Kết quả thực thi sp_TongTien_DonGiaoHang với mã đã có...52
Hình 4. 16. Kết quả thực thi sp_TongTien_DonGiaoHang với mã chưa nhập. 53 Hình 4. 17. Kết quả thực thi sp_DoanhThuNhanVienTheoThangNam...53
Hình 4. 18. Kết quả thực thi sp_DoanhThubanHang...53
Hình 4. 19. Kết quả thực thi sp_ThongTinPhieuNhap...54
Hình 4. 20. Kết quả thực thi sp_DSNhanVienTheoMaTuaSach...54
Hình 4. 21. Kết quả thực thi f_DSKhachHangTheoLoai...57
Hình 4. 22. Kết quả thực thi f_SLDonHang...57
Hình 4. 23. Kết quả thực thi f_SoLuongNV...58
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">Hình 4. 26. Kết quả khi cập nhật số lượng tồn lớn hơn 0...62
Hình 4. 27. Kết quả khi cập nhật số lượng nhập kho là số âm...62
Hình 4. 28. Kết quả khi cập nhật số lượng nhập kho là số dương...63
Hình 4. 29. Kết quả cập nhật thêm dữ liệu có vào tbCHITIETKHOSACH...63
Hình 4. 30. Kết quả khi cập nhật thêm dữ liệu tbCHITIETKHOSACH...64
Hình 4. 31. Kết quả khi cập nhật thêm dữ liệu tbPHIEUCHI không đúng...64
Hình 4. 32. Kết quả khi cập nhật thêm dữ liệu tbPHIEUCHI hợp lệ...64
Hình 4. 33. Kết quả khi cập nhật tbPHIEUTHANHTOAN khơng đúng...65
Hình 4. 34. Kết quả khi cập nhật tbPHIEUTHANHTOAN hợp lệ...65
Hình 4. 35. Giao diện đăng nhập tài khoản 'quanlykho'...67
Hình 4. 36. Kết quả giao diện khi đăng nhập tài khoản 'quanlykho'...67
Hình 4. 37. Giao diện đăng nhập tài khoản 'nhanvienphongkho'...67
Hình 4. 38. Kết quả giao diện khi đăng nhập tài khoản ‘nhanvienphongkho’. .68 Hình 4. 39. Giao diện báo cáo nhà sách lên kết với mã khách hàng 'NS"...69
Hình 4. 40. Giao diện tạo báo cáo cho biết danh sách nhân viên 'nam'...69
Hình 4. 41. Giao diện báo cáo cho biết danh sách khách hàng còn nợ tiền...70
Hình 4. 42. Kết quả báo cáo danh sách các nhà sách có liên kết theo mã 'NS'..70
Hình 4. 43. Kết quả báo cáo danh sách nhân viên nam...71
Hình 4. 44. Kết quả báo cáo cho biết danh sách khách hàng cịn nợ tiền...71
Hình 4. 45. Kết quả thống kê doanh thu của 6 tháng đầu năm 2021...72
Hình 4. 46. Kết quả thống kê theo năm...72
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9"><b>LỜI CẢM ƠN...i</b>
<b>ĐÁNH GIÁ NHẬN XÉT CỦA GIẢNG VIÊN...ii</b>
<b>DANH MỤC TỪ VIẾT TẮT...iii</b>
<b>DANH MỤC THUẬT NGỮ ANH – VIỆT...iv</b>
1.1.1. Giới thiệu tổng quan về Nhà xuất bản Giáo dục Việt Nam...1
1.1.2. Mơ tả bài tốn...2
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">3.1 Mơ hình dữ liệu mức quan niệm...11
3.1.1. Xây dựng các thực thể...11
3.1.2. Mơ hình dữ liệu mức quan niệm...12
3.2. Mơ hình dữ liệu quan hệ...12
5.1. Những kết quả đạt được của đồ án...73
5.2. Những khó khăn và điểm yếu của đồ án...73
5.3. Hướng nghiên cứu tiếp theo...73
<b>TÀI LIỆU THAM KHẢO...74</b>
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11"><b>1.1.1. Giới thiệu tổng quan về Nhà xuất bản Giáo dục Việt Nam</b>
Nhà xuất bản Giáo dục Việt Nam (trước đây là Nhà xuất bản Giáo dục) trực thuộc bộ giáo dục và Đào tạo, được thành lập ngày 01 tháng 6 năm 1957. Nhà xuất bản Giáo dục Việt Nam có nhiệm vụ tổ chức biên soạn, biên tập, in, phát hành sách giáo khoa và các sản phẩm giáo dục phục vụ nghiên cứu, giảng dạy, học tập của các ngành học, bậc học; giúp Bộ Giáo dục và Đào tạo chỉ đạo công tác thiết bị giáo dục và thư viện trường học trên toàn quốc.
Tháng 7 năm 2010, Bộ Giáo dục và Đào tạo có quyết định chuyển Công ty mẹ - Nhà xuất bản Giáo dục Việt Nam thành Công ty trách nhiệm hữu hạn một thành viên do Nhà nước làm chủ sở hữu, với tên gọi đầy đủ: CÔNG TY TRÁCH NHIỆM HỮU HẠN MỘT THÀNH VIÊN NHÀ XUẤT BẢN GIÁO DỤC VIỆT NAM. Tên giao dịch quốc tế: VietNam Education Publishing House Limited Comapy.
Trên chặng đường 63 năm xây dựng và phát triển, Nhà xuất bản Giáo dục Việt Nam hiện là nhà xuất bản lớn nhất trong cả nước với hệ thống các đơn vị thành viên, mỗi năm xuất bản hàng nghìn tựa sách giáo dục và sản xuất thiết bị, đồ dùng dạy học đa dạng phục vụ nhà trường. Những năm qua, Nhà xuất bản Giáo dục Việt Nam ln hành thành tốt nhiệm vụ chính trị được giao: đảm bảo cung ưng dày đủ, đồng bộ, kịp thời sách giáo khoa, các sản phẩm giáo dục phục vụ học sinh, giáo viên và đông đảo bạn đọc trong cả nước.
Ngoài ra, Nhà xuất bản Giáo dục Việt Nam thường xun, tích cực tham gia cơng tác xã hội, hoạt động từ thiện: nhận nuôi dưỡng nhiều Bà mẹ Việt Nam anh hùng, ủng hộ sách giáo khoa cho học sinh là con các chiến sĩ đang bảo vệ Trường Sa, tặng sách cho thư viện trường học vùng khó khăn, tặng quà tết cho người nghèo, xây dựng nhà tình nghĩa, ủng hộ đồng bào bị thiên tai, bão lũ,..
Với đội ngũ cán bộ, công nhân viên có trình độ chun mơn cao gồm nhiều giáo sư, phó giáo sư, tiến sĩ, thạc sĩ, cử nhân đủ các chuyên ngành khoa học cơ
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">bản; có đội ngũ biên tập viên chuyên ngành giàu kinh nghiệm, nhiệt tình, tâm huyết; đội ngũ họa sĩ, kĩ thuật viên chế bản, thiết kế đồ họa giỏi; đội ngũ công nhân kĩ thuật in lành nghề; các chuyên gia thiết bị giáo dục, thư viện trường học, chuyên gia kinh tế, chuyên gia quản lí giỏi.
Nhà xuất bản Giáo dục Việt Nam đã vinh dự được Đảng, Nhà nước tặng thưởng Huân chương Hồ Chí Minh cùng nhiều Huân, Huy chương cao quý, Bằng khen, Cờ thi đua của nhiều Bộ, Ngành trao tặng.
Tiếp tục thực hiện tốt nhiệm vụ được giao, các đơn vị trong hệ thống Nhà xuất bản Giáo dục Việt Nam luông phấn đấu không ngừng, đổi mới nâng cao chất lượng, phong phú, đa dạng hóa sản phẩm, nâng cao ý thức trách nhiệm, tinh thần tự chủ, tiếp tục củng cố và phát triển hệ thống ngày một vững mạnh, góp phần phục vụ tốt nhất sự nghiệp giáo dục, đào tạo của nước nhà.
<b>1.1.2. Mơ tả bài tốn</b>
Với mơ hình quản lý nhà xuất bản, sẽ có rất nhiều q trình cũng như cơng đoạn để có thể xuất bản ra một tựa sách là một việc hết sức phức tạp và khó khăn, địi hỏi phải có một phần mềm đủ quy mô để quản lý. Việc phân tích, nghiên cứu xây dựng một hệ thống quản lý thông tin nhà xuất bản giúp cho công việc quản lý các quá trình xuất bản các tựa sách được diễn ra dễ dàng hơn. Hệ thống triển khai có thể lưu trữ được các thông tin về một tựa sách, các kế hoạch in ấn, thông tin tác giả/hợp đồng, nhân viên, khách hàng. Bên cạnh đó, cịn quản lý được các đơn đặt hàng, phiếu thanh toán cũng như phiếu nhập/ xuất. Ngoài ra, việc xây dựng một hệ thống quản lý còn giúp cho doanh nghiệp thống kê được danh sách các khách hàng cịn nợ, thơng tin nợ, kiểm soát được số lượng tồn để tránh thất thốt.
<b>1.2. Cơ sở hình thành ý tưởng</b>
Với sự phát triển không ngừng của Công nghệ thông tin và truyền thơng thì ứng dụng của tin học ngày càng đi sâu vào đời sống của con người và nó đã trở thành một sản phẩm không thể thiếu của thế giới văn minh, giúp cho con người có thể nắm bắt thơng tin một cách nhanh chóng, chính xác. Đứng trước xu thế đó, việc ứng dụng cơng nghệ thông tin vào hoạt động quản lý của các doanh nghiệp, cơ sở sản
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">xuất doanh nghiệp là một tất yếu, nó giúp cho các đơn vị nâng cao năng lực quản lý, hiệu quả hoạt động, đáp ứng yêu cầu cạnh tranh trên thị trường.
Trong xu hướng tin học hóa tồn cầu và chính sách tin học hóa trong quản lý của nhà nước. Nhà xuất bản Giáo dục với nhiệm vụ là tổ chức biên soạn, biên tập, in ấn và tổng phát hành các loại sách giáo khoa và các xuất bản phẩm giáo dục khác phục vụ cho giảng dạy, học tập của các ngành học, bậc học trong toàn quốc. Đồng thời giúp Bộ Giáo Dục và Đào Tạo chỉ đạo công tác phát hành sách và thư viện trường học. Chính vì vậy, đơn vị đề ra mục tiêu là phải đáp ứng đủ về số lượng, đảm bảo về nội dung lẫn hình thức một cách kịp thời nhất các xuất bản phẩm. Việc quản lý các quy trình xuất bản của Nhà xuất bản cũng đang ngày càng phức tạp do sự phát triển nhanh chóng, việc ứng dụng tin học hóa trong quản lý hiện nay đang là vấn đề bức thiết cần được áp dụng ngay trong quá trình của Nhà xuất bản.
Hiện nay, Nhà xuất bản Giáo dục Việt Nam đã tin học hóa trong một các lĩnh vực quản lý và cũng thu được nhiều kết quả tích cực. Tuy nhiên đó chỉ là các ứng dụng nhỏ của hệ thống thông tin. Để phát triển lên tầng cao mới, trong thời đại mới thì Nhà xuất bản cần một hệ thống đồng bộ quản lý các quy trình trong tồn bộ lĩnh vực quản lý.
Theo sự tìm hiểu qua các thơng tin và xuất phát từ nhu cầu thực tế của quá trình quản lý trong Nhà xuất bản Giáo dục Việt Nam, chúng em đã nhận ra tầm quan trọng của việc ứng dụng công nghệ thông tin cũng như hệ thống thông tin. Chính vì
<i><b>vậy, chúng em xin chọn đề tài nghiên cứu là: “Quản trị cơ sở dữ liệu Nhà xuất</b></i>
<i><b>bản Giáo dục Việt Nam”.</b></i>
<b>1.3. Mục tiêu của đề tài</b>
- Mục tiêu tổng quát: Nhằm phân tích cơ sở dữ liệu thông tin quản lý của Nhà xuất bản Giáo dục Việt Nam, thiết lập một cái nhìn tổng quan rõ ràng về hệ thống và các mục đích chính của hệ thống cần xây dựng hệ thống quản lý các hoạt động và lưu trữ dữ liệu, và liệt kê các nhiệm vụ mà hệ thống cần thực hiện.
- Mục tiêu cụ thể:
+ Hiểu rõ quy trình hoạt động của hệ thống
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">+ Xử lý được các hoạt động lưu trữ dữ liệu + Xử lý được các chức năng của hệ thống
+ Thực hiện các nhiệm vụ của hệ thống cần thực hiện
<b>1.4. Phạm vi của đề tài</b>
- Đề tài được nghiên cứu trong phạm vi hoạt động của công ty Nhà xuất bản Giáo dục Việt Nam.
- Phạm vi thực hiện đề tài dựa trên những kiến thức thu được từ môn học Hệ quản trị cơ sở dữ liệu 1 và tham khảo thêm một số tài liệu bên ngoài để bổ sung thêm kiến thức nhằm hoàn thiện đồ án hơn, đáp ứng được mục tiêu của đề tài như: xây dựng được mơ tả hệ thống, mơ hình thực thể kết hợp, mơ hình quan hệ dữ liệu, xác định được các RBTV, xây dựng cơ sở dữ liệu, mơ hình diagram, ứng dựng synonym/ index/ store procedure/ function/ trigger/ reporting services/ pivotchart
- Hệ thống quản lý quy trình xuất bản có chức năng hỗ trợ các nhân viên của Nhà xuất bản trong việc quản lý tiến độ xuất bản. Hệ thống cho phép việc quản lý tiến độ của quá trình xuất bản.
- Đề tài tập trung phân tích và lưu trữ dữ liệu của các quy trình:
Quản lý các thơng tin chính: tác giả, loại khách hàng, khách hàng, kế hoạch xuất bản (phiếu thống kê), kho sách, tựa sách, đơn đặt hàng, phiếu thanh toán
Quản lý các thông tin nội bộ Công ty: bộ phận, nhân viên Quản lý quy trình nhập/xuất kho
Quản lý các thông tin về xưởng in Quản lý phiếu chi, tổng hợp nợ
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">Một nhà xuất bản (NXB) sách cần xây dựng một hệ thống quản lý thông tin. Nhà xuất bản gồm có các bộ phận: Ban giám đốc, Bộ phận biên tập, Bộ phận kỹ thuật, Bộ phận tài vụ, Bộ phận thương mại và xưởng in. Nhà xuất bản có một đội ngũ tác giả viết những tựa sách mà nhà xuất bản sẽ xuất bản ra. Mỗi tác giả có thể viết một tựa sách hoặc có thể viết nhiều tựa sách. Ngồi ra, có thể nhiều tác giả cùng hợp tác viết chung một tựa sách.
<b>Quy trình nhận bản thảo: Khi các tác giả viết xong một tựa sách, họ sẽ</b>
đem bản thảo đến Bộ phân biên tập của NXB để đăng ký xuất bản; sau khi xem xét tính hợp pháp và hợp lý của bản thảo, nhân viên Bộ phận biên tập sẽ làm đơn xin đăng ký kế hoạch xuất bản lên Ban giám đốc. Ngoài ra, nhân viên Bộ phận biên tập cịn nhận những thơng tin sửa đổi, đính chính của tác giả về tựa sách để kịp thời sửa chửa hoặc đính chính.
Nếu được Ban giám đốc phê duyệt nhân viên Bộ phận biên tập sẽ lưu thông tin về tác giả và bản thảo, có nhiệm vụ biên tập bản thảo về mặt nội dung cũng như hình thức và thiết kế bìa sách.
<b>Quy trình lên kế hoạch in ấn: Biên tập đem bản thảo và mẫu bìa sách đã</b>
thiết kế gửi đến bộ phận kỹ thuật của NXB để bộ phận này dàn trang, làm chế bản rồi đưa ra xưởng in. Trước khi chuyển chế bản sách sang xưởng in, nhân viên Bộ phận kỹ thuật sẽ thống kê số trang sách trong một tựa sách, kích thước sách, số bản in rồi gửi thống kê báo cáo này cho Ban giám đốc, Bộ phận tài vụ và xưởng in.
<b>Quy trình in ấn: Xưởng in nhận bản thảo từ bộ phận Biên tập và phiếu</b>
thống kê (kế hoạch in ấn) từ Bộ phận kỹ thuật. Tiến hành in ấn theo kế hoạch sau đó chuyển cho bộ Phận kho.
<b>Quy trình bán hàng: Bộ phận thương mại của NXB sẽ thực hiện công việc</b>
bán các tựa sách đã in cho khách hàng. Mỗi lần giao sách, nhân viên Bộ phận
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">thương mại sẽ nhận đơn đặt hàng từ khách hàng và tiến hành chuẩn bị đơn hàng. Cùng lúc đó sẽ lập phiếu thanh tốn cho đơn hàng.
<b>Quy trình nhập – xuất kho: Sau khi in xong, xưởng in sẽ thông báo đến Bộ</b>
phận kho để xếp sách vào kho và lập phiếu nhập kho. Tương tự, khi chuẩn bị giao hàng cho khách hàng nhân viên kho cũng sẽ xuất kho và lập phiếu xuất kho.
<b>Quy trình thu – chi: Nhân viên Bộ phận tài vụ sẽ tính tiền nhuận bút cho tác</b>
giả, sau đó các tác giả sẽ đến phịng tài vụ nhận tiền. Ngoài ra, cuối mỗi tháng, nhân viên Bộ phận tài vụ có nhiệm vụ tính khoản cơng nợ (tiền thiếu) của các khách hàng để lập giấy báo nợ và gửi cho họ. Nhân viên Bộ phận tài vụ cũng sẽ thống kế tổng thu chi mỗi tháng và bản thống kê này gửi cho Ban giám đốc NXB.
<i><b><small>Hình 2. 1. Quy trình nghiệp vụ của hệ thống</small></b></i>
<b>2.2. SQL Server2.2.1. Giới thiệu</b>
Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relation Database Management System – RDBMS), cung cấp cách tổ chức dữ liệu bằng cách lưu chúng vào các bảng. Dữ liệu quan hệ được lưu trữ trong các bảng và các
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">quan hệ đó được định nghĩa giữa các bảng với nhau. Người dùng truy cập dữ liệu trên Server thông qua ứng dụng. Người quản trị cơ sở dữ liệu truy cập Server trực tiếp để thực hiện các chức năng cấu hình, quản trị và thực hiện các thao tác bảo trì cơ sở dữ liệu.
SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:
Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, có cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu.
Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu.
Điều khiển truy cập – SQL có thể được sử dụng để cấp phát và kiểm soát các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở dữ liệu.
Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc tồn vẹn trong cơ sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các thao tác cập nhật cũng như các lỗi của hệ thống.
<b>2.2.2. Ưu điểm</b>
- Không cần code: Rất dễ dàng để quản lý các hệ thống cơ sở dữ liệu việt sử dụng SQL chuẩn mà không cần phải viết bất cứ dòng code nào.
- Tiêu chuẩn được quy định rõ ràng: SQL sử dụng 2 tiêu chuẩn ISO và ANSI trong khi với các non - SQL database khơng có tiêu chuẩn nào được tn thủ.
- Tính di động: SQL Có thể sử dụng trong chương trình trong PCs, servers, laptops, và thậm chí cả mobile phones.
- Ngơn ngữ tương tác: Ngơn ngữ này có thể được sử dụng để giao tiếp với cơ sở dữ liệu và nhận câu trả lời cho các câu hỏi phức tạp trong vài giây.
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">- Multiple data views: Với sự trợ giúp của ngơn ngữ SQL, người dùng có thể tạo các hiển thị khác nhau về cấu trúc cơ sở dữ liệu và cơ sở dữ liệu cho những người dùng khác nhau.
<b>2.2.3. Nhược điểm</b>
- Giao diện khó dung: SQL có giao diện phức tạp khiến một số người dùng khó truy cập.
- Khơng được quyền kiểm sốt: Các lập trình viên sử dụng SQL khơng có tồn quyền kiểm soát cơ sở dữ liệu do các quy tắc nghiệp vụ ẩn.
- Thực thi: Hầu hết các chương trình, dữ liệu SQL đều có phần mở rộng độc quyền riêng của nhà cung cấp. Bên cạnh các tiêu chuẩn SQL.
- Giá cả: Chi phí vận hành của một số phiên bản SQL khiến một số lập trình viên gặp khó khăn khi tiếp cận.
Trong những năm qua, ngôn ngữ SQL đã trở thành một trong những ngôn ngữ cơ sở dữ liệu được sử dụng rộng rãi nhất thế giới. Nó đã trở thành một tiêu chuẩn cho Tổ chức tiêu chuẩn Quốc tế và Viện Stands Quốc gia Hoa Kỳ.
<b>2.3. Các công cụ hỗ trợ khác2.3.1. PowerDesigner</b>
PowerDesigner là mơi trường mơ hình hóa tổng thể dưới dạng đồ họa và dễ dàng sử dụng. Công cụ PowerDesigner này có chức năng: trình bày các mơ hình bằng các ký hiệu đồ họa phù hợp với các phương pháp mơ hình hóa trong thực tế như mơ hình thực thể và mối kết hợp, mơ hình quan hệ,…tự động tạo hồ sơ mô tả các đối tượng trên mơ hình và tự động tạo mã phát sinh cơ sở dữ liệu và các chức năng xử lý từ mơ hình đã xây dựng.
Vai trị của PowerDesigner trong việc thiết kế mơ hình cơ sở dữ liệu: trình bày mơ hình ở dạng đồ họa; kiểm tra tính hợp lệ của mơ hình được thiết kế; phát sinh mơ hình dữ liệu logic hay mơ hình dữ liệu vật lý.
<i><b>Sơ lược về thực thể, thuộc tính và liên kết:</b></i>
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19"> Thực thể: là khái niệm để chỉ một lớp các đối tượng có cùng đặc tính chung mà người ta muốn quản lý thơng tin về nó. Ví dụ như: hàng hóa,…
Thuộc tính: dùng để mơ tả thơng tin về một thực thể người ta thường dựa vào các đặc trưng riêng của thực thể đó, các đặc trưng đó gọi là thuộc tính của thực thế. Ví dụ: thực thế Hàng hóa có các thuộc tính như: Mã hàng hóa, Tên hàng hóa, Ngày xuất bản,...
Liên kết: là một sự ghép nối giữa hai hay nhiều thực thể, phản ánh sự liên hệ giữa các thực thế; có 3 kiểu liên kết, gồm: quan hệ một một (1 - 1), quan hệ nhiều nhiều (n – n) và quan hệ một nhiều (1 – n).
<b>2.3.2. App Diagrams.net (Draw.io)</b>
Diagrams.net (Draw.io) là một ứng dụng tuyệt vời cho phép người dùng tạo ra những sơ đồ quy trình, sitemap, cơ cấu tổ chức,… một cách nhanh chóng và dễ dàng. Diagrams.net khơng hề phức tạp, có rất nhiều khối hình được tạo sẵn với các hình dạng khác nhau, phù hợp với nhiều ngành nghề và nhiều đối tượng sử dụng. Người dùng chỉ việc tìm, chọn và kéo thả các thành phần có sẵn trong thanh cơng cụ và đặt vào vị trí mình mong muốn. Thêm vào đó, Diagrams.net (Draw.io) có sẵn thư viện template rất phong phú để người dùng có thể bắt đầu nhanh hơn mà khơng phải tự mình vẽ hết lại từ đầu.
<b>2.3.3. Microsoft Visual Studio</b>
Microsoft Visual Studio là một mơi trường phát triển tích hợp từ Microsoft; được sử dụng để phát triển chương trình máy tính cho Microsoft Windows, cũng như các trang web, các ứng dụng web và các dịch vụ web.
Visual Studio sử dụng nền tảng phát triển phần mềm của Microsoft như: Windows API, Windows Form, Windows Presentation Foundation, Windows Store và Microsoft Silverlight. Và nó có thể sản xuất cả hai ngơn ngữ máy và mã số quản lý.
Visual Studio gồm một trình soạn thảo mã hồ trợ IntelliSense cũng như cải tiến mã nguồn. Trình gỡ lỗi tích hợp hoạt động cả về trình gỡ lỗi mức độ mã nguồn và gỡ lỗi mức độ máy. Cơng cụ tích hợp khác bao gồm một mẫu thiết kế các hình thức
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">xây dựng giao diện ứng dụng, thiết kế web, thiết kế lớp và thiết kế giản đồ cơ sở dữ liệu. Nó chấp nhận các plugin nâng cao các chức năng ở hầu hết các cấp bao gồm thêm hỗ trợ cho các hệ thống quản lý phiên bản (như Subversion) và bổ sung thêm bộ công cụ mới như biên tập và thiết kế trực quan cho các miền ngôn ngữ cụ thể hoặc bộ công cụ dành cho các khía cạnh khác trong quy trình phát triển phần mềm.
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21"><b>3.1.1. Xây dựng các thực thể</b>
- Thực thể TỰA SÁCH: Mã tựa sách (khóa chính), tên tựa sách, số trang, năm xuất bản, giá tiền
- Thực thể TÁC GIẢ: mã tác giả (khóa chính), họ tên tác giả, ngày sinh, địa chỉ, số điện thoại, email
- Thực thể BỘ PHẬN: mã bộ phận (khóa chính), tên bộ phận, ghi chú
- Thực thể NHÂN VIÊN: mã nhân viên (khóa chính), tên nhân viên, địa chỉ, số diện thoại, email
- Thực thể LOẠI KHÁCH HÀNG: mã loại khách hàng (khóa chính), tên loại khách hàng
- Thực thể KHÁCH HÀNG: mã khách hàng (khóa chính), tên khách hàng, số điện thoại, địa chỉ, email
- Thực thể ĐƠN ĐẶT HÀNG: mã đơn đặt hàng (DDH) (khóa chính), ngày lập đơn đặt hàng
- Thực thể PHIẾU THANH TỐN: mã phiếu thanh tốn (TT) (khóa chính), ngày lập phiếu TT, số tiền đã trả, tình trạng, ngày hết hạn TT
- Thực thể PHIẾU THỐNG KÊ: mã phiếu thống kê (TK) (khóa chính), ngày lập phiếu TK, Tổng số trang sách, kích thước sách, số bản in, đơn vị, dòng
- Thực thể PHIẾU NHẬP KHO: mã phiếu nhập kho (khóa chính), ngày nhập - Thực thể PHIẾU XUẤT KHO: mã phiếu xuất kho (khóa chính), ngày xuất
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22"><b>3.1.2. Mơ hình dữ liệu mức quan niệm</b>
<i><b><small>Hình 3. 2. Mơ hình dữ liệu mức quan niệm</small></b></i>
<b>3.2. Mơ hình dữ liệu quan hệ</b>
BOPHAN (MaBoPhan, TenBoPhan, GhiChu)
NHANVIEN (MaNhanVien, TenNhanVien, DiaChi, SoDienThoai, Email, GioiTinh, MaBoPhan)
TACGIA (MaTacGia, HoTenTG, NgaySinh, DiaChi, SoDienThoai, Email) PHIEUCHI (MaPhieuChi, NgayLapPhieuChi, SoTien, TinhTrang, GhiChu, MaTacGia, MaNhanVien)
XUONGIN (MaXuong, TenXuong, DiaChi, SoDienThoai)
KHOSACH (MaKhoSach, TenKhoSach, DiaChiKho, SoDienThoai) CHITIETKHOSACH (MaKhoSach, MaTuaSach, SoLuongTon, GhiChu) PHIEUNHAPKHO (MaPhieuNhap, NgayNhap, MaNhanVien, MaKhoSach)
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">CHITIETPHIEUNHAPKHO (MaTuaSach, MaPhieuNhap, SoLuongNhap, GhiChu)
PHIEUXUATKHO (MaPhieuXuat, NgayXuat, MaNhanVien, MaKhoSach) CHITIETPHIEUXUATKHO (MaTuaSach, MaPhieuXuat, SoLuongXuat, GhiChu)
PHIEUTHONGKE (MaPhieuTK, NgayLapPhieuTK, TongSoTrangSach, KichThuocSach, SoBanIn, DonVi, DongMoTa, TinhTrang, MaNhanVien)
TUASACH (MaTuaSach, TenTuaSach, SoTrang, NamXuatBan, GiaTien, MaXuong, MaPhieuTK)
HOPDONG (MaTacGia, MaTuaSach, MaHopDong, DongMoTa) LOAIKHACHHANG (MaLoaiKhachHang, TenLoaiKhachHang)
KHACHHANG (MaKhachHang, TenKhachHang, DiaChi, SoDienThoai, Email, MaLoaiKhachHang)
DONDATHANG (MaDonDatHang, NgayLapDDH, MaKhachHang, MaNhanVien)
CHITIETDONDATHANG (MaDonDatH ang , MaTuaSach, SoLuongDat, DonGia, DiaChiGiaoHang, TinhTrang)
PHIEUTHANHTOAN (MaPhieuTT, NgayLapPhieuTT, SoTienDaTra, TinhTrang, NgayHetHanTT, MaDonDatHang, MaNhanVien)
<b>3.3. Ràng buộc dữ liệu</b>
<b>Ràng buộc toàn vẹn trên miền giá trị của thuộc tính:</b>
<b>R1/ Ngày lập phiếu chi <= Ngày hiện hành</b>
Bối cảnh: PhieuChi
Điều kiện: pc PhieuChi
Thì pc.[NgayLapPhieuChi] <= Ngày hiện hành Cuối
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">Thì pnk.[NgayNhap] <= Ngày hiện hành
Điều kiện: pxk PhieuXuatKho Thì pxk.[NgayXuat] <= Ngày hiện hành
</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">Điều kiện: ptk PhieuThongKe
Thì ptk.[NgayLapPhieuTK] <= Ngày hiện hành
</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">Điều kiện: ts TuaSach
Thì ts.[NamXuatBan] <= Năm hiện hành
</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">Thì ddh.[NgayLapDDH] <= Ngày hiện hành
</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">Bối cảnh: DonDatHang, KhoSach
Điều kiện: ddh DonDatHang, ks KhoSach <b>R2/ Số lượng xuất <= Số lượng nhập</b>
Bối cảnh: ChiTietPhieuNhapKho, ChiTietPhieuXuatKho
Điều kiện: ctpnk ChiTietPhieuNhapKho, ctpxk ChiTietPhieuXuatKho Thì ctpxk.[ SoLuongXuat] <= ctpnk.[ SoLuongNhap]
Cuối
Tầm ảnh hưởng:
</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31"><b>3.4. Cài đặt cơ sở dữ liệu</b>
<b>Cơ sở dữ liệu quản lý thông tin Nhà xuất bản Giáo dục Việt Nam</b>
<i><b>+ BOPHAN (MaBoPhan, TenBoPhan, GhiChu)</b></i>
Mỗi BOPHAN phải có một mã bộ phận để phân biệt tên bộ phận và ghi chú.
<b>T<sup>Tên thuộc tính</sup><sup>Diễn giải</sup><sup>Kiểu dữ</sup>liệuthước<sup>Kích</sup><sup>Ghi chú</sup></b>
2 TenBoPhan Họ tên tác giả nvarchar 100
<i><b><small>Bảng 3. 1. Cơ sở dữ liệu tbBOPHAN</small></b></i>
Mỗi NHANVIEN phải có một mã nhân viên để phân biệt tên nhân viên, địa chỉ, số điện thoại, email, giới tính và mã bộ phận
</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">1 MaNhanVien Mã nhân viên nvarchar 5 Khóa 2 TenNhanVien Tên nhân viên nvarchar 100
4 SoDienThoai Số điện thoại nvarchar 12
<i><b>+ TACGIA (MaTacGia, HoTenTG, DiaChi, SoDienThoai, Email)</b></i>
Mỗi TACGIA phải có một mã tác giả để phân biệt họ tên tác giả, địa chỉ, số điện thoại, email.
</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33"><b>TIN NHÀ XUẤTBẢN</b>
<b>Loại thực thể: TACGIAST</b>
<b>T<sup>Tên thuộc tính</sup><sup>Diễn giải</sup><sup>Kiểu dữ</sup>liệuthước<sup>Kích</sup><sup>Ghi chú</sup></b>
2 HoTenTG Họ tên tác giả nvarchar 100
4 SoDienThoai Số điện thoại nvarchar 12
<i><b><small>Bảng 3. 3. Cơ sở dữ liệu tbTACGIA</small></b></i>
<i><b>+ PHIEUCHI (MaPhieuChi, NgayLapPhieuChi, SoTien, TinhTrang,GhiChu, MaTacGia, MaNhanVien)</b></i>
Mỗi PHIEUCHI phải có một mã phiếu chi để phân biệt ngày lập phiếu, số tiền, tình trạng, mã tác giả và mã nhân viên.
<b>T<sup>Tên thuộc tính</sup><sup>Diễn giải</sup><sup>Kiểu dữ</sup>liệuthước<sup>Kích</sup><sup>Ghi chú</sup></b>
1 MaPhieuChi Mã phiếu chi nvarchar 5 Khóa 2 NgayLapPhieuCh Ngày lập datetime
</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">i phiếu chi
4 TinhTrang Tình Trạng nvarchar 100
6 MaTacGia Mã tác giả nvarchar 5 7 MaNhanVien Mã nhân viên nvarchar 5
<i><b><small>Bảng 3. 4. Cơ sở dữ liệu tbPHIEUCHI</small></b></i>
<i><b>+ XUONGIN (MaXuong, TenXuong, DiaChi, SoDienThoai, MaGiamDoc)</b></i>
Mỗi XUONGIN phải có mã xưởng để phân biệt tên xưởng, địa chỉ và số điện
<b>T<sup>Tên thuộc tính</sup><sup>Diễn giải</sup><sup>Kiểu dữ</sup>liệuthước<sup>Kích</sup><sup>Ghi chú</sup></b>
2 TenXuong Tên xưởng nvarchar 100
</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">3 DiaChi Địa chỉ nvarchar 100 4 SoDienThoai Số điện thoại nvarchar 12
<i><b><small>Bảng 3. 5. Cơ sở dữ liệu tbXUONGIN</small></b></i>
<i><b>+ KHOSACH (MaKhoSach, TenKhoSach)</b></i>
Mỗi KHOSACH phải có mã kho sách để phân biệt tên kho sách, số lượng tồn
2 TenKhoSach Tên kho sách nvarchar 100 3 DiaChiKho Địa chỉ kho nvarchar 100 4 SoDienThoai Số điện thoại nvarchar 12
<i><b><small>Bảng 3. 6. Cơ sở dữ liệu tbKHOSACH</small></b></i>
</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">SoDienThoai nvarchar(12), )
<i><b>+ CHITIETKHOSACH (MaKhoSach, MaTuaSach, SoLuongTon, GhiChu)</b></i>
Mỗi CHITIEKHOSACH phải có mã kho sách và mã tựa sách để phân biệt số
3 SoLuongTon Số lượng tồn int
</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">Mỗi PHIEUNHAPKHO phải có mã phiếu nhập để phân biệt ngày nhập, mã nhân viên và mã kho sách.
2 NgayNhap Ngày nhập datetime
3 MaNhanVien Mã nhân viên nvarchar 5 4 MaKhoSach Mã kho sách nvarchar 5
<i><b><small>Bảng 3. 8. Cơ sở dữ liệu tbPHIEUNHAPKHO</small></b></i>
Mỗi CHITIETPHIEUNHAPKHO phải có mã tựa sách và mã phiếu nhập để phân biệt số lượng nhập và ghi chú.
</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">2 MaPhieuNhap Mã phiếu nhập nvarchar 5 Khóa 3 SoLuongNhap Số lượng nhập int
<i><b><small>Bảng 3. 9. Cơ sở dữ liệu tbCHITIETPHIEUNHAPKHO</small></b></i>
Mỗi PHIEUXUATKHO phải có mã phiếu xuất để phân biệt ngày xuất, mã nhân viên và mã kho sách.
<b>T<sup>Tên thuộc tính</sup><sup>Diễn giải</sup><sup>Kiểu dữ</sup>liệuthước<sup>Kích</sup><sup>Ghi chú</sup></b>
1 MaPhieuXuat Mã phiếu xuất nvarchar 5 Khóa
</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">2 NgayXuat Ngày xuất datetime
3 MaNhanVien Mã nhân viên nvarchar 5 4 MaKhoSach Mã kho sách nvarchar 5
<i><b><small>Bảng 3. 10. Cơ sở dữ liệu tbPHIEUXUATKHO</small></b></i>
Mỗi CHITIETPHIEUXUATKHO phải có mã phiếu tựa sách, mã phiếu xuất để phân biệt số lượng xuất và ghi chú.
2 MaPhieuXuat Mã phiếu xuất nvarchar 5 Khóa 3 SoLuongXuat Số lượng xuất int
<i><b><small>Bảng 3. 11. Cơ sở dữ liệu tbCHITIETPHIEUXUATKHO</small></b></i>
<i>Lệnh tạo bảng:</i>
create table tbCHITIETPHIEUXUATKHO
</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40"><i><b>+ PHIEUTHONGKE (MaPhieuTK, NgayLapPhieuTK, TongSoTrangSach,KichThuocSach, SoBanIn, DonVi, DongMoTa, TinhTrang, MaNhanVien)</b></i>
Mỗi PHIEUTHONGKE phải có mã phiếu thống kê để phân biệt ngày lập phiếu, tổng số trang sách, kích thước sách, số bản in, đơn vị, dịng mơ tả, tình trạng và mã
</div>