Tài liệu tham khảo kỹ thuật công nghệ, chuyên ngành tin học Quản lý thư viện được xây dựng trên hệ quản trị cơ sở dữ liệu Access 97
Trang 1lời nói đầu
Ngày nay, không ai còn nghi ngờ gì vai trò của thông tin đối với đờisống xã hội Sự nắm bắt đợc nhu cầu thực tế xã hội, những thông tin chínhxác, nhanh nhậy là nhu cầu chính của con ngời trong mọi mặt vận động củaxã hội, dới mọi quy mô ngày càng đóng vai trò cốt yếu trong việc quản lý và
điều hành
Với trình độ khoa học ngày càng phát triển, đặc biệt là lĩnh vực khoahọc điện tử, đã và đang đợc quan tâm đầu t, ứng dụng trong nhiều lĩnh vựckhác nhau Trong đó, việc ứng dụng tin học trong mọi tổ chức kinh tế, hànhchính đoàn thể, trong các Xí nghiệp và Công ty, trong các trờng Đại học, Việnnghiên cứu và thiết kế rất là quan trọng
Nhờ vào tin học, chúng ta có thể quản lý mọi lĩnh vực một cách nhanhchóng nh: Quản lý sinh viên, Quản lý vật t, Quản lý th viện, Quản lý bánhàng mà trớc kia khi tin học cha đợc phổ biến thì các công việc này đã làmchúng ta mất rất nhiều thời gian và công sức Sự phát triển nhanh chóng củamáy tính đã làm thay đổi cục diện của lĩnh vực quản lý Các phần mềm linhhoạt và thông minh đó đã giúp chúng ta cho công việc quản lý thuận tiện,nhanh chóng trong việc thống kê, tìm kiếm, tính toán, thông báo kịp thờinhững thông tin cần thiết, giảm nhẹ không gian lu trữ, thay thế cho việc làmthủ công với hiệu quả thấp lại cồng kềnh
Xuất phát từ các yêu cầu thực tế và đợc sự đồng ý của giáo viên hớngdẫn, cô Nguyễn Thu Hơng, tôi chọn đề tài: Quản lý th viện
Đề tài quản lý th viện đợc xây dựng trên hệ quản trị cơ sở dữ liệuAccess97
Đây là một đề tài mang tính thực tế, nhng với kinh nghiệm cha nhiều vàkiến thức có hạn nên khó tránh khỏi sai sót, tôi mong nhận đợc nhiều ý kiến
đóng góp và chỉ bảo của các thầy cô, các bạn bè để đề tài đợc hoàn thiện hơn
Tôi xin chân thành cảm ơn cô Nguyễn Thu Hơng đã giúp đỡ tận tình đểtôi hoàn thành bài thực tập này
giới thiệu chơng trình
Với trình độ khoa học kỹ thuật ngày càng phát triển đặc biệt là khoahọc và thông tin đã bắt đầu đợc quan tâm đầu t và ứng dụng trong nhiều lĩnhvực khác nhau Trong đó việc ứng dụng tin học vào công việc quản lý cơ sở dữliệu và xử lý tính toán, tìm kiếm, chèn xoá một cơ sở dữ liệu để đạt hiệu quảcao nhất trong công việc quản lý
Trang 2Trớc kia, khi tin học cha đợc phổ biến thì các công việc trong quản lýcơ sở dữ liệu quả là rất vất vả và mất rất nhiều thời gian tìm kiếm theo phiếu.Nay tin học đợc đa vào quản lý cơ sở dữ liệu đã giúp cho những ngời làm côngviệc quản lý đỡ vất vả hơn trong công việc Hiện nay, chơng trình quản lý sửdụng bằng ngôn ngữ Access đợc dùng rất phổ biến Chính vì vậy, tôi chọn viếtchơng trình Quản lý th viện bằng ngôn ngữ Access.
Sơ lợc về cơ sở dữ liệu của Microsoft Access:
Access là một hệ quản trị cơ sở dữ liệu, khai thác và quản trị cơ sở dữ liệu.Trong hệ cơ sở dữ liệu có 3 khả năng chính: định nghĩa dữ liệu, khaithác và quản trị dữ liệu
Là một hệ quản trị cơ sở dữ liệu, các khả năng của Access đợc mô tả:
- Lu trữ dữ liệu trong cơ sở dữ liệu
- Cho phép ngời dùng sử dụng ngôn ngữ hỏi đáp SQL
- Có nhiều chức năng trong môi trờng đa ngời sử dụng thông qua mậtkhẩu, đồng thời có chức năng gán quyền sử dụng cho mỗi cá nhân hay từngnhóm riêng biệt Điều quan trọng nhất là nó đảm bảo các ràng buộc toàn vẹndữ liệu ngay cả khi đợc phân tán trên mạng và cơ chế khoá cho phép nhấtquán khi truy cập trong môi trờng đa ngời dùng
Là một chơng trình chạy trên Windows nên giao diện rất quen thuộc,nhiều chức năng trợ giúp thiết kế đơn giản, nhanh, đẹp
Cho phép chia sẻ hay kết nối dữ liệu giữa các ứng dụng khác nhau nhWord, Excel hay phần liên kết nhúng đối tợng OLE
- Chơng trình đòi hỏi cấu hình máy lớn, giá thành đầu t để có đợc phầnmềm phù hợp
Các công cụ của Access cần thiết để tạo ra một cơ sở dữ liệu:
1 Table (Bảng): là một thành phần cơ bản của cơ sở dữ liệu trongAccess, là đối tợng quan trọng nhất Trong một Table số liệu đợc tổ chức trênnhiều dòng (record) và trên dòng nhiều cột (field) Có thể tạo nhiều Tabletrong một cơ sở dữ liệu, mỗi Table lu trữ về một đối tợng thông tin nào đó Cơcấu tổ chức của Table cho phép mỗi Table chứa nhiều kiểu thông tin: kiểuText (văn bản), kiểu Number (số), kiểu Date (ngày tháng), kiểu Picture (hình ảnh)
2 Query (truy vấn): là công cụ cho phép đặt câu hỏi với dữ liệu lu trongcơ sở dữ liệu Cách thức truy vấn (tức là cách đặt câu hỏi) sẽ cho Access biết
ta cần những thông tin gì và hệ thống sẽ vận động dữ liệu dựa trên các mốiquan hệ thiết lập sẵn để rút ra kết quả yêu cầu, có các loại truy vấn
- Truy vấn chọn (Select query): là truy vấn thông dụng nhất Với kiểutruy vấn này ta có thể xem xét dữ liệu trong các bảng, thực hiện phân tích vàchỉnh sửa dữ liệu đó Ta có thể xem thông tin từ một bảng hoặc thêm vào cáctrờng từ nhiều bảng khác
- Crosstabquery: thể hiện dữ liệu dạng hàng và cột nh bảng tính
- Action query: dùng để chỉnh sửa nhiều bản ghi cùng một lúc Loạitruy vấn này có thể tạo bảng mới, thêm xoá sửa các bản ghi trong bảng
- Union query: kết hợp các trờng tơng ứng từ hai hay nhiều bảng
2
Trang 3- Data - definition query: tạo, xoá, chỉnh sửa các bảng trong CSDL dùngcác lệnh trong SQL.
3 Form (biểu mẫu): dùng cho các thao tác nhập liệu, giúp ngời ta cócảm giác nh đang ghi điền vào các mẫu phiếu Một biểu mẫu trong Access
định nghĩa một tập dữ liệu ta muốn thu nhập và từ đó đa vào CSDL Ta cũng
có thể dùng biểu mẫu để xem xét dữ liệu hay in ra để quảng cáo
4 Report (báo biểu): dùng in ấn hay thể hiện các báo biểu dới nhiềuhình thức trình bày phong phú, đẹp mắt, đồng thời dùng để thể hiện kết quảcủa các bảng Query
5 Macro (lệnh gộp): là một tập hợp các lệnh tự động hoá các thao tácthờng nhật hay vì phải lặp đi lặp lại một cách nhàm chán Khi cho chạy mộtMacro, Access thực hiện lại một loạt thao tác đã quy định trớc
6 Modul (đơn thể): là một dạng tự động hoá cao cấp hơn Macro, đợclập trình bằng ngôn ngữ Access
nội dung đề tài
1 Các chức năng cơ bản trong hệ thống quản lý th viện
2 Phân loại và gom tụ các chức năng thành các chức năng con của chứcnăng chính
III Biểu đồ luồng dữ liệu
1 Biểu đồ luồng dữ liệu mức khung cảnh
2 Biểu đồ luồng dữ liệu mức đỉnh
3 Biểu đồ luồng dữ liệu mức dới đỉnh
IV Biểu đồ cấu trúc dữ liệu
Trang 4I Mục đích cơ bản của đề tài
Hệ thống quản lý th viện từ trớc đến nay tuy là làm thủ công nhng cácthao tác thừa hành của nó có tính khoa học rất cao Tuy vậy, nó đòi hỏi rấtnhiều thời gian và công sức của con ngời mà không thể tránh đợc những nhầmlẫn, sai sót Trong thực tế hiện nay, việc quản lý một khối lợng lớn sách báo
và bạn đọc của th viện thật không dễ dàng chút nào, và việc quản lý theo
ph-ơng pháp thủ công sẽ mất rất nhiều thời gian, thậm chí không đáp ứng nổi Vìvậy, việc đa tin học vào công tác quản lý sẽ giúp chúng ta giải quyết vấn đềnày
II Khảo sát hệ thống cũ
1 Một số nguyên tắc trong quản lý th viện
Về nguyên tắc, dù quản lý trên máy vi tính nhng mô hình hoạt động của
hệ thống th viện vẫn dựa trên phơng thức quản lý truyền thống
Trớc hết, để quản lý một khối lợng lớn sách báo và tạp chí thì phải tổchức tốt hệ thống th mục Hệ thống th mục sẽ giúp bạn đọc tra cứu sách mộtcách hữu hiệu, cán bộ th viện tìm kiếm sách một cách dễ dàng
Thông thờng ta có thể tổ chức hệ thống th mục theo nhiều cách:
- Hệ thống th mục theo thể loại: Hình thức này tiện cho bạn đọc tìmsách để nghiên cứu theo một chuyên sâu nào đó
- Hệ thống th mục theo tên sách: Đối với hình thức này, khi cần mợnsách biết chính xác tên thì việc tìm kiếm trở nên dễ dàng
- Hệ thống th mục theo tên tác giả: Cách tổ chức này thuận tiện khi bạn
đọc muốn tìm sách của một tác giả nào đó
2 Phân tích hệ thống quản lý th viện cũ
Một yếu tố quan trọng quyết định đến hiệu quả của việc quản lý sách
đó là quản lý bạn đọc Bất cứ lúc nào ngời quản lý th viện cũng có thể biết đợc
4
Trang 5những ai mợn sách gì của th viện Việc nắm vững thông tin về bạn đọc và cácnhu cầu về sách của họ sẽ giúp việc quản lý của họ tốt hơn và từ đó có hớng
đầu t sách thích hợp
Những năm trớc đây, khi máy tính cha đợc sử dụng rộng rãi, các hệthống quản lý đều làm theo phơng pháp thủ công Hệ thống quản lý th việncũng quản lý theo phơng pháp đó Trong tình hình hiện nay, việc quản lý mộtkhối lợng lớn sách báo cũng nh bạn đọc theo phơng pháp này gặp rất nhiềukhó khăn Nó đòi hỏi phải có nhiều cán bộ lâu năm, có kinh nghiệm và phảitốn nhiều công sức mà chắc chắn vẫn không thể tránh khỏi sai sót, nhầm lẫn
Những khó khăn này thể hiện qua các công việc quản lý sau:
- Đối với việc phục vụ bạn đọc:
Khi bạn đọc mợn một cuốn sách, cán bộ th viện phải kiểm tra xem cuốnsách đó có còn trong th viện không, nếu còn mới làm thủ tục cho mợn Côngviệc này là tất yếu nhng tốn rất nhiều thời gian để tìm sổ và tra cứu Nếu có sựsai lệch về thông tin giữa các bảng danh mục sách và số lợng sách hiện cótrong kho sẽ dẫn đến tình trạng bạn đọc phải chờ đợi rất lâu mới nhận đợc câutrả lời là đã hết sách Trờng hợp bạn đọc không nắm vững những thông tin vềcuốn sách thì việc tìm kiếm càng trở nên khó khăn hơn
- Đối với việc quản lý:
Khi cần báo cáo thống kê định kỳ về danh mục các loại sách có trong
th viện, tình hình bạn đọc, tổng kinh phí đầu t của cả một th viện sẽ tốn rấtnhiều thời gian, thậm chí không làm nổi
Tóm lại, việc quản lý theo phơng pháp thủ công trong hệ thống cũ làkhông còn phù hợp ở các th viện hiện nay Những tồn tại trên đây cho thấyviệc tổ chức lại hệ thống th viện là rất cần thiết để có thể giải quyết đợc cáctồn tại trên, đáp ứng các yêu cầu trong quản lý th viện
3 Những yêu cầu của hệ thống mới
Công tác quản lý th viện làm việc với một số lợng lớn sách báo và độcgiả, nếu không biết xắp xếp và tổ chức công việc hợp lý sẽ gặp rất nhiều khókhăn
Hệ thống quản lý mới phải khắc phục đợc các nhợc điểm của hệ thống
cũ, phải giúp đợc các cán bộ quản lý th viện làm việc dễ dàng hơn, thuận tiệnhơn giúp bạn đọc đợc phục vụ tốt hơn và để cho họ chấp hành các quy địnhcủa th viện một cách nghiêm túc
III ý nghĩa của việc tin học hoá thay cho hệ thống hiện tại
Hệ thống quản lý hiện tại đợc làm bằng thủ công nên công việc gặpkhông ít khó khăn, nhất là trong vấn đề lu trữ, cập nhật, tra cứu những thôngtin cần thiết Với việc tin học hoá hệ thống hiện tại đã khắc phục những nhợc
điểm nêu trên, đáp ứng công việc yêu cầu đề ra
chơng II: phân tích hệ thống
Trang 6I Phân tích các chức năng cơ bản của hệ thống
1 Các chức năng cơ bản trong hệ thống quản lý th viện
- Nhập sách mới
- Cập nhật thông tin về sách
- Xem danh mục sách và sách cho mợn
- Tra cứu, tìm kiếm theo tên sách, tên tác giảm, thể loại
- Thống kê mợn trả
- Thống kê sách
- Theo dõi thống kê mợn trả của bạn đọc
2 Phân loại và gom tụ các chức năng thành các chức năng con của chức năng chính
Sau khi phân loại và gom tụ ta đợc hệ thống quản lý th viện với 5 chứcnăng chính:
Trang 7- Tìm kiếm theo chủ đề
- Tìm kiếm theo tên tác giả
II Biểu đồ phân cấp chức năng
Qua quá trình phân tích các chức năng trên của hệ thống quản lý th viện
ta thu đợc một mô hình chung về quả trình quản lý th viện dới dạng biểu đồphân cấp chức năng sau:
III Biểu đồ luồng dữ liệu
1 Biểu đồ luồng dữ liệu mức khung cảnh
Biểu đồ luồng dữ liệu mức khung cảnh đợc xây dựng ở giai đoạn đầucủa quá trình phân tích và đợc dùng để vạch ranh giới hệ thống và buộc quátrình phân tích phải xem xét mọi ràng buộc của hệ thống Sơ đồ mức khungcảnh sẽ diễn tả mọi tập hợp các chức năng của hệ thống trong các mối quan hệtrớc sau, trong tiến trình xử lý, bàn giao thông tin cho nhau Đây chính là công
cụ chính của quá trình phân tích hệ thống, là cơ sở để thiết kế phần trao đổi vàphần dữ liệu
Thông tin Nhập sách
Trả sách
In quá
hạn
Nhập thông tin bạn đọc
Sửa thông tin bạn đọc
Huỷ thông tin bạn đọc
Tra cứu
Theo mã
Theo chủ đề
Theo tên sách
Theo tên tác giả
Hệ thống quản lý
Nhân viên
Trang 8Trong đó bạn đọc, nhân viên quản lý, sách là những tác nhân ngoài hệthống, các liên kết chỉ các dòng thông tin của hệ thống Sơ đồ dòng dữ liệu làmột trong những dòng công cụ quan trọng nhất trong việc phân tích hệ thống
có cấu trúc, nó đa ra phơng pháp thiết kế mối quan hệ giữa các chức nănghoặc quá trình của hệ thống với những thông tin mà chúng sử dụng
2 Biểu đồ luồng dữ liệu mức đỉnh
Chức năng của hệ thống quản lý đợc phân rã thành: Quản lý sách, Quản
lý bạn đọc, Quản lý mợn trả, Thống kê, Tra cứu
Các tác nhân ngoài vẫn bảo toàn, các luồng dữ liệu vẫn bảo toàn, cóthêm các luồng dữ liệu nội bộ, xuất hiện các kho dữ liệu
8
Trang 9Bạn đọc Sách Mợn trả
3 Biểu đồ luồng dữ liệu mức dới đỉnh
Sơ đồ luồng dữ liệu mức dới đỉnh chi tiết thêm một bớc nữa, từ
đó tìm ra luồng dữ liệu cho từng modul chơng trình một cách cụ thể
- Sơ đồ luồng dữ liệu chức năng quản lý sách
- Sơ đồ luồng dữ liệu chức năng quản lý mợn trả
Quản lý sách
Trang 10- Sơ đồ luông dữ liệu chức năng quản lý bạn đọc
- Sơ đồ luồng dữ liệu chức năng thống kê
- Sơ đồ luồng dữ liệu chức năng tra cứu
a Biểu đồ luồng dữ liệu chức năng quản lý sách
Sách
b Biểu đồ luồng dữ liệu chức năng quản lý mợn trả
10
Nhập sách
Huỷ thông tin sách
Sửa thông tin sáchSách nhập
M ợn sách
In giấy báo quá
hạn
Trả sáchBạn đọc
Trang 11Bạn đọc Sách Mợn trả
Trang 12c Biểu đồ luồng dữ liệu chức năng quản lý bạn đọc
Bạn đọc
d Biểu đồ luồng dữ liệu chức năng thống kê
12
Nhập thông tin
bạn đọc
Huỷ thông tin bạn
đọc
Sửa thông tin bạn
đọcBạn đọc
Thống kê
m ợn sách
Nhân viên quản lý
Trang 13MASACH MASACH MABD
TENSACH MABD HOTEN
TACGIA NGAYMUON NGAYSINHNHAXB NGAYHENTRA GIOITINH
NAMXB DIACHI
SOLUONG NGAYLAMTHENGAYNHAP NGAYHETHANTHELOAI
NOIDE
2 Sơ đồ liên kết dữ liệu
Tra theo thể loại
Trang 1414
Trang 15chơng iii: thiết kế cơ sở dữ liệu
2 Bảng Bạn đọc (Table BAN DOC)
3 Bảng Mơn trả (Table MUON_TRA)
II Các chức năng và các Forms của chơng trình
Trang 16Forms chơng trình chính, Forms này có các Menu gọi đến các Forms chức năng của chơng trình.
1 Chức năng nhập số liệu
a Khi chọn chức năng "Nhập sách" thì chơng trình sẽ hiện ra Form
16
Trang 17- Nút điều khiển "Thoát" thực hiện việc đóng Form "Nhập thông tin sách" lại và quay trở lại chơng trình chính Thủ tục xử lý sự kiện nh sau:
Private Sub thoat_Click()
DoCmd.Close
End Sub
-Nút điều khiển "Không" có tác dụng không nhập thông tin đa vào Thủ tục xử lý sự kiện nh sau:
Private Sub KHONG_Click()
Forms![NHAP_SACH]![MA SACH] = Null
Forms![NHAP_SACH]![TEN SACH] = Null
Forms![NHAP_SACH]![CHU DE] = Null
Forms![NHAP_SACH]![TAC GIA] = Null
Forms![NHAP_SACH]![NHA XB] = Null
Forms![NHAP_SACH]![NAM XB] = Null
Forms![NHAP_SACH]![SO LUONG] = Null
Forms![NHAP_SACH]![NGAY NHAP] = Null
Forms![NHAP_SACH]![NOI DE] = Null
DoCmd.GoToControl "MA SACH"
REC("MA SACH") = Forms![NHAP_SACH]![MA SACH]
REC("TEN SACH") = Forms![NHAP_SACH]![TEN SACH]
REC("CHU DE") = Forms![NHAP_SACH]![CHU DE]
REC("TAC GIA") = Forms![NHAP_SACH]![TAC GIA]
REC("NHA XB") = Forms![NHAP_SACH]![NHA XB]
REC("NAM XB") = Forms![NHAP_SACH]![NAM XB]
REC("SO LUONG") = Forms![NHAP_SACH]![SO LUONG]
REC("NGAY NHAP") = Forms![NHAP_SACH]![NGAY NHAP]REC("NOI DE") = Forms![NHAP_SACH]![NOI DE]
REC.Update
Trang 18Forms![NHAP_SACH]![MA SACH] = Null
Forms![NHAP_SACH]![TEN SACH] = Null
Forms![NHAP_SACH]![CHU DE] = Null
Forms![NHAP_SACH]![TAC GIA] = Null
Forms![NHAP_SACH]![NHA XB] = Null
Forms![NHAP_SACH]![NAM XB] = Null
Forms![NHAP_SACH]![SO LUONG] = Null
Forms![NHAP_SACH]![NGAY NHAP] = Null
Forms![NHAP_SACH]![NOI DE] = Null
DoCmd.GoToControl "MA SACH"
Forms![NHAP_BD]![HO TEN] = Null
Forms![NHAP_BD]![NGAY SINH] = Null
Forms![NHAP_BD]![GIOI TINH] = Null
18
Trang 19Forms![NHAP_BD]![DIA CHI] = Null
Forms![NHAP_BD]![NGAY LAM THE] = Null
Forms![NHAP_BD]![NGAY HET HAN] = Null
REC("HO TEN") = Forms![NHAP_BD]![HO TEN]
REC("NGAY SINH") = Forms![NHAP_BD]![NGAY SINH]
REC("GIOI TINH") = Forms![NHAP_BD]![GIOI TINH]
REC("DIA CHI") = Forms![NHAP_BD]![DIA CHI]
REC("NGAY LAM THE") = Forms![NHAP_BD]![NGAY LAM THE]REC("NGAY HET HAN") = Forms![NHAP_BD]![NGAY HET HAN]REC.Update
REC.Close
Forms![NHAP_BD]![MA BD] = Null
Forms![NHAP_BD]![HO TEN] = Null
Forms![NHAP_BD]![NGAY SINH] = Null
Forms![NHAP_BD]![GIOI TINH] = Null
Forms![NHAP_BD]![DIA CHI] = Null
Forms![NHAP_BD]![NGAY LAM THE] = Null
Forms![NHAP_BD]![NGAY HET HAN] = Null
Trang 20- Nút điều khiển "Thoát" thực hiện nhiệm vụ đóng Form và quay trở về chơng trình chính Thủ tục xử lý sự kiện này nh sau:
Private Sub thoat_Click()
DoCmd.Close
End Sub
- Nút điều khiển "Không" có tác dụng không sửa thông tin bạn đọc trên Form đa vào Thủ tục xử lý sự kiện này nh sau:
Private Sub KHONG_Click()
DoCmd.GoToControl "MA SACH"
End Sub
- Nút điều khiển "Xem" thực hiện việc hiển thị lại tất cả các thông tin
về sách có mã sách nhập vào trớc khi sửa Thủ tục xử lý sự kiện này nh sau:
Private Sub XEM_Click()
Dim DB As Database, REC As Recordset
Dim dk, ms As String
Set DB = CurrentDb
Set REC = DB.OpenRecordset("SACH", DB_OPEN_DYNASET)
If Not IsNull(Forms![SUA_SACH]![MA SACH]) Then
ms = Forms![SUA_SACH]![MA SACH]
dk = "[MA SACH]=" + "'" + ms + "'"
REC.FindFirst dk
If Not REC.NoMatch Then
Forms![SUA_SACH]![TEN SACH] = REC.Fields![TEN SACH]
Forms![SUA_SACH]![TAC GIA] = REC.Fields![TAC GIA]
Forms![SUA_SACH]![CHU DE] = REC.Fields![CHU DE]
Forms![SUA_SACH]![NHA XB] = REC.Fields![NHA XB]
Forms![SUA_SACH]![NAM XB] = REC.Fields![NAM XB]
20
Trang 21Forms![SUA_SACH]![NGAY NHAP] = REC.Fields![NGAY NHAP] Forms![SUA_SACH]![SO LUONG] = REC.Fields![SO LUONG]
Forms![SUA_SACH]![NOI DE] = REC.Fields![NOI DE]
"SACH" nh trên Form nhập vào sẽ đa ra thông báo không có mã đó Thủ tục
xử lý sự kiện này nh sau:
Private Sub SUA_Click()
Dim DB As Database, REC As Recordset
Dim dk, ms As String
Set DB = CurrentDb
Set REC = DB.OpenRecordset("SACH", DB_OPEN_DYNASET)
If Not IsNull(Forms![SUA_SACH]![MA SACH]) Then
REC.Fields![MA SACH] = Forms![SUA_SACH]![MA SACH]
REC.Fields![TEN SACH] = Forms![SUA_SACH]![TEN SACH]
REC.Fields![TAC GIA] = Forms![SUA_SACH]![TAC GIA]
REC.Fields![NHA XB] = Forms![SUA_SACH]![NHA XB]
REC.Fields![NAM XB] = Forms![SUA_SACH]![NAM XB]
REC.Fields![CHU DE] = Forms![SUA_SACH]![CHU DE]
REC.Fields![SO LUONG] = Forms![SUA_SACH]![SO LUONG]
REC.Fields![NGAY NHAP] = Forms![SUA_SACH]![NGAY NHAP]REC.Fields![NOI DE] = Forms![SUA_SACH]![NOI DE]
REC.Update
REC.Close