Cơ sở dữ liệu

  • Thread starter Thanh Nam
  • Ngày gửi
Thanh Nam

Thanh Nam

Admin
Thành viên BQT
Quản lý cao cấp
24/4/03
3,314
1,123
113
HCM
www.famaconsulting.vn
Bài viết do tác giả Phạm Thành Mỹ cung cấp

I.CƠ SỞ DỮ LIỆU
A.Khái niệm:
Cơ sở dữ liệu là 1 hệ thống dữ liệu bao gồm tất cả các dữ liệu liên quan đến 1 công việc cụ thể. Dữ liệu bao gồm dữ liệu ban đầu và dữ liệu phát sinh, không bao gồm dữ liệu sau khi tính toán như dữ liệu cuối kỳ, dữ liệu báo cáo. Tùy theo yêu cầu của các loại báo cáo, sẽ có thêm những dữ liệu chi tiết bổ sung.
a. Thí dụ về dữ liệu liên quan đến quản lý vật tư hàng hóa:
-Danh mục nhóm hàng
-Danh mục các mặt hàng (tên hàng, quy cách, đơn vị tính chính, nếu cần thì đơn vị tính phụ, và tỷ lệ quy đổi)
-Tồn kho đầu kỳ: Mặt hàng, số lượng và giá trị
-Các chứng từ nhập xuất hàng: mặt hàng, số lượng và giá trị
b. Thí dụ về dữ liệu liên quan đến quản lý sách của thư viện:
-Danh mục nhóm sách
-Danh mục sách
-Số lượng sách mỗi đầu sách
-Các phiếu (chứng từ) cho mượn sách, trả sách (trong đó thể hiện thời gian mượn sách)
c. Thí dụ dữ liệu về quản lý lao động:
-Danh sách các nhóm lao động (phân loại)
-Danh sách lao động,
-Mức lương, phụ cấp phải trả đầu kỳ
-Thang lương bảng lương theo từng mức lương và của từng nhóm lao động
-Các quyết định tuyển dụng, hợp đồng lao động, các quyết định tăng lương, cho nghỉ việc, quyết định phạt trừ lương.
-Các quy định về thời gian thử việc, thời hạn hợp đồng, thời hạn xét tăng lương
B.Sự cần thiết phải tổ chức cơ sở dữ liệu:
1.Dữ liệu phải được tổ chức để khi truy xuất dữ liệu bằng các hàm dò tìm hoặc phương thức dò tìm không bị lỗi không tìm thấy
2.Dữ liệu phải được tổ chức sao cho sau khi nhập liệu, không có những thông tin trùng lắp. Như vậy file dữ liệu của ta không bị phình to vì chứa thông tin thừa. Các báo cáo sẽ nhặt thông tin cần thiết từ các bảng dữ liệu tương ứng, không cần phải băn khoăn khi nhìn đâu cũng thấy cùng 1 thông tin.
3.Dữ liệu phải được tổ chức để bảo đảm tính duy nhất của 1 số trường dữ liệu nhập vào, thí dụ như tránh việc nhập tên khác nhau cho cùng 1 mặt hàng.
4.Dữ liệu phải được tổ chức để bảo đảm tính ràng buộc tham chiếu cho 1 trường dữ liệu, thí dụ như tránh việc nhập kho 1 mặt hàng chưa có trong danh mục.
5.Dữ liệu phải được tổ chức để ràng buộc tính “yêu cầu bắt buộc nhập” đối với 1 số trường dữ liệu khi nhập liệu. Yêu cầu này (“không nhập thiếu dữ liệu”) bổ sung cho yêu cầu thứ 2 là “không nhập dư dữ liệu”.
[FONT=&quot]
[/FONT] C.Mối quan hệ trong hệ cơ sở dữ liệu:
Giữa các bảng dữ liệu có những mối quan hệ đặt ra để ràng buộc dữ liệu với nhau. Có các loại quan hệ One to Many và One to One.
1.Mối quan hệ 1 nhiều (One to Many)
Thông thường khi thiết kế 1 cơ sở dữ liệu, người ta thường tạo những bảng dữ liệu cập nhật phát sinh theo cặp, 1 chính và 1 phụ (master và child):
Bảng Master gồm những thông tin chung của 1 giao dịch phát sinh như số chứng từ, ngày tháng, tên người, hoặc đơn vị giao dịch, nội dung giao dịch
Bảng Child là những thông tin chi tiết của giao dịch như các mặt hàng, giá cả, số lượng, thành tiền, …
Như vậy, mỗi chứng từ phát sinh có 1 nội dung chính và 1 hoặc nhiều chi tiết, nên chúng có mối quan hệ 1 ~ nhiều. Khi thiết lập mối quan hệ này trong cơ sở dữ liệu, nghĩa là tạo thêm 1 trường trong bảng Child, nối kết với 1 trường có sẵn trong Master, trường này phải là trường khóa trong Master nghĩa là không có trùng lấp; sao cho căn cứ vào trường liên kết này, từ Master lọc ra được Child tương ứng và ngược lại. Hơn nữa, khi tạo lập query tính toán có thể lọc theo chứng từ để lập các loại báo cáo khác nhau.
Mối quan hệ One to Many còn thể hiện giữa các bảng mã và bảng dữ liệu: 1 mã khách hàng hoặc mã nhà cung cấp có nhiều giao dịch, một mã vật tư hàng hóa có nhiều lần nhập xuất, một mã tài khoản có nhiều lần ghi nợ có, 1 nhóm hàng có nhiều mặt hàng…
2.Mối quan hê 1 ~1:
Là với mỗi dòng dữ liệu của bảng này chỉ có 1 dòng dữ liệu tương ứng của bảng kia và ngược lại. Thí dụ như quan hệ giữa bảng mã vật tư Hàng hóa và bảng số dư đầu kỳ vật tư hàng hóa.


D.Thiết kế cơ sở dữ liệu:
1.Phân loại dữ liệu:
Tùy theo yêu cầu quản lý dữ liệu loại nào, ta phải thiết kế cơ sở dữ liệu cho phù hợp. Một cơ sở dữ liệu sẽ gồm có 2 phần như đã nói ở phần trước: Phần dữ liệu ban đầu và phần dữ liệu phát sinh nhập vào hàng ngày.
a. Dữ liệu ban đầu:
Dữ liệu ban đầu là những bảng chứa dữ liệu tạo ra 1 lần và được sử dụng lập đi lập lại suốt trong quá trình nhập dữ liệu phát sinh. Dữ liệu này có thể bổ sung khi có yêu cầu, gồm có:
-Các danh mục chính: Danh mục vật tư hàng hóa, danh mục Tài sản cố định, danh mục khách hàng, danh mục kho, danh mục tài khoản kế toán, danh mục nhà cung cấp, …
-Các danh mục phụ trợ: Danh mục nhóm vật tư, danh mục loại chứng từ, danh mục tài khoản đối ứng, danh mục loại chi phí …
-Các bảng số dư đầu kỳ: số dư vật tư hàng hóa, số dư tài khoản, số dư chi tiết công nợ người mua, người bán …
b. Dữ liệu phát sinh trong kỳ:
Là dữ liệu phát sinh hàng ngày nhập vào, thí dụ như:
-Phiếu thu tiền, chi tiền
-Giáy báo nợ, báo có của ngân hàng
-Phiếu nhập kho, xuất kho hàng hóa vật tư, công cụ dụng cụ,
-Hóa đơn bán hàng
-Bảng tính lương phải trả, BHXH, BHYT phải nộp
-Thông báo nộp thuế
-…
2.Cấu trúc một bảng dữ liệu:
Bảng dữ liệu gồm có nhiều trường dữ liệu, mỗi trường có 1 tên trường, tên trường không được đặt trùng, và nên đặt ngắn gọn, dễ hiểu, bằng tiếng Việt không dấu và không có khoảng cách.
Mỗi trường dữ liệu sẽ có những thuộc tính riêng. Sau đây là 1 số thuộc tính cơ bản:
-Loại dữ liệu: 1 trong 4 loại: số, ngày tháng, chuỗi, logic. Tùy theo yêu cầu có thể đặt 1 trường số là số nguyên (Byte, Integer, Long) hoặc số thập phân (Single, Double)
-Thuộc tính bắt buộc nhập (True hoặc False): True là bắt buộc nhập, False là có thể để trống.
-Thuộc tính trường khóa: (Primary key) là trường chứa dữ liệu có tính duy nhất, thường là trường mã các loại.
3.Các nguyên tắc:
Thiết kế dữ liệu cần phải áp dụng 1 số biện pháp để thỏa mãn những yêu cầu ở mục B. Ngoài ra bảng dữ liệu còn phải đáp ứng các yêu cầu của máy tính, phần mềm để xử lý dữ liệu được nhanh chóng.
-Các bảng dữ liệu gồm các trường dữ liệu, tên trường nên ngắn gọn, không nên có khoảng cách và không có dấu tiếng Việt. Nếu làm trong Excel thì tên trường phải được đặt ở dòng 1 và nguyên bảng không có merge cell, không có dòng trống giữa các dòng dữ liệu.
-Các bảng danh mục phải có 1 trường mã và làm trường khóa, trường này không có dữ liệu trùng. Mỗi mã là duy nhất trong toàn bảng (yêu cầu 3). Các thông tin phụ chỉ thể hiện 1 lần trong 1 bảng, khi cần lập báo cáo sẽ dùng các biện pháp dò tìm dựa trên mã để thể hiện.
-Các bảng dữ liệu phát sinh khi có liên quan đến danh mục, chỉ nên dùng mã trong danh mục, không dùng tên hay thông tin phụ. Vì mã là duy nhất và có thể dùng biện pháp này nọ để chọn trong danh sách, nếu dùng tên thì tên có thể trùng và nguy cơ gõ sai là nhiều hơn. Ngoài ra điều quan trọng là chỉ cần 1 trường mã, không cần các trường phụ kèm theo. Nguyên tắc là dữ liệu càng gọn càng tốt, không chứa thông tin trùng lấp (yêu cầu 2).
-Các bảng dữ liệu phát sinh cần có những mối quan hệ ràng buộc với những bảng mã, để tránh trường hợp sử dụng những mã không có trong danh mục (yêu cầu 4)
-Một số trường có tính bắt buộc nhập thí dụ như trường mã hàng hóa trong phiếu xuất kho, nhập kho, hoặc trường số chứng từ trong mọi loại chứng từ, phải thiết lập thuộc tính “bắt buộc nhập” (theo yêu cầu 5).
E.Cơ sở dữ liệu thiết kế mẫu:
Trên cơ sở kế toán thu chi tiền mặt và mở rộng cho kế toán nói chung, ta nên thiết kế Cơ sở dữ liệu với các bảng dữ liệu, mỗi bảng có các trường như sau:
1.Các bảng dữ liệu ban đầu:
a.Bảng danh mục tài khoản:
-Mã tài khoản
-Tên tài khoản
-Cấp tài khoản (có thể không dùng đối với DN nhỏ)
-Tài khoản cha (chỉ dùng nếu có trường cấp tài khoản)
-Đặc điểm số dư (1 = dư nợ, 2 = dư có, 3 = dư 2 bên), trong Excel phần này có thể lược bỏ
b.Bảng số dư tài khoản đầu kỳ
-Mã tài khoản
-Số dư nợ đầu kỳ
-Số dư có đầu kỳ
c.Bảng danh mục khách hàng (có thể dùng chung cho nhà cung cấp):
-Mã khách hàng
-Tên khách hàng
-Địa chỉ
-Mã số thuế
d.Bảng số dư công nợ
-Mã khách hàng ( & nhà cung cấp)
-Tài khoản công nợ (Nếu dùng chung với nhà cung cấp)
-Số dư nợ
-Số dư có
e.Bảng danh sách công nhân viên:
-Mã nhân viên
-Tên nhân viên
-Bộ phận
f.Bảng danh mục nhóm vật tư: (Bảng này có thể không cần dùng)
-Mã nhóm
-Tên nhóm
g.Bảng danh mục vật tư hàng hóa:
-Mã vật tư hàng hóa
-Nhóm (nếu có bảng nhóm Vật tư thì mới có trường này)
-Tên vật tư hàng hóa
-Đơn vị tính chính
-Đơn vị tính phụ (có thể không dùng)
-Hệ số quy đổi (chỉ dùng nếu có trường đơn vị tính phụ)
h.Bảng số dư vật tư hàng hóa đầu kỳ:
-Mã vật tư hàng hóa
-Số lượng đầu kỳ
-Thành tiền đầu kỳ
i.Bảng danh mục kho: (Chỉ dùng nếu có nhiều kho)
-Mã kho
-Tên kho
-Địa chỉ
j.Bảng danh mục ngoại tệ (chỉ dùng nếu có sử dụng ngoại tệ)
-Mã ngoại tệ
-Tên ngoại tệ
-Tỷ giá tạm tính
k.Bảng danh mục chứng từ
-Mã chứng từ
-Tên chứng từ
l.Bảng danh mục chi phí (cần thiết để phân tích chi phí và lập báo cáo tài chính)
-Mã chi phí
-Tên chi phí
-Ghi chú
2.Các bảng dữ liệu phát sinh:
a.Chứng từ
-ID (trường khóa)
-Loại chứng từ
-Số chứng từ
-Ngày chứng từ
-Họ tên
-Mã đối tượng (dùng cho người mua, người bán)
-Nội dung
-Kho nhập
-Kho xuất
-Hóa đơn GTGT (True hoặc False) để xác định giao dịch có hóa đơn GTGT hay không.
-Số hóa đơn
-Ngày hóa đơn
-Serie hóa đơn
-Thuế suất thuế GTGT
-Mã ngoại tệ (nếu có)
-Tỷ giá hiện hành (nếu có)
b.Chi tiết chứng từ
-ID (trường khóa)
-CTID (trường liên kết với ID của bảng Chứng từ)
-Mã Vật tư hàng hóa
-Đơn vị tính
-Đơn giá
-Số lượng
-Thành tiền ngoại tệ (nếu có)
-Thành tiền đổng Việt Nam
-Tiền thuế GTGT
-Tài khoản ghi nợ
-Tài khoản ghi có
3jkvvh8bgczbsy8.GIF


Trên đây là cơ sở dữ liệu mẫu của 1 doanh nghiệp nhỏ, với những mối quan hệ như đã nói ở trên, một số trường đã lược bỏ bớt, một số bảng không cần thiết cũng không lập.
Những mối quan hệ chủ yếu như sau:
-Loại chứng từ giữa 2 bảng LoaiCT và CTKt, quan hệ 1 nhiều
-Loại chi phí và mã chi phí giữa 2 bảng LoaiCP và CTKt, quan hệ 1 nhiều
-Mã khách hàng giữa 2 bảng DmKH và bảng CTKt, quan hệ 1 nhiều
-Mã khách hàng giữa 2 bảng DmKH và bảng Sducongno, quan hệ 1 nhiều, sở dĩ 1 nhiều là dự định theo dõi công nợ từng lần giao dịch hoặc từng tờ hóa đơn mua và bán. Một khách hàng hoặc 1 nhà cung cấp sẽ có công nợ nhiều hóa đơn.
-ID và CTID của 2 bảng CTKt và bảng NKKt, quan hệ 1 nhiều
-Số tài khoản của DMTK và Tài khoản ghi nợ của NKKt, quan hệ 1 nhiều.
-Số tài khoản của DMTK và Tài khoản ghi có của NKKt, quan hệ 1 nhiều.
-Mã vật tư hàng hóa của 2 bảng DMVTHH và bảng NKKt, quan hệ 1 nhiều
-Số tài khoản giữa 2 bảng DmTK và SoDuTK, quan hệ 1- 1
-Số tài khoản giữa 2 bảng DMTK và DmVTHH, quan hệ 1 nhiều.
[FONT=&quot]
[/FONT] F.CƠ SỞ DỮ LIỆU THIẾT KẾ TRÊN EXCEL:
Các nguyên tắc:
Ngoại trừ các nguyên tắc cơ bản về thiết kế cơ sở dữ liệu nêu trên, cơ sở dữ liệu trên excel cần tuân thủ 1 số quy tắc khác như sau:
-Các bảng dữ liệu ban đầu (các danh mục) có thể để chung 1 sheet nhưng phải cách ra ít nhất 1 cột giữa các bảng
-Tên trường dữ liệu không nên để dấu tiếng Việt, không có khoảng trắng và nên ngắn gọn.
-Dòng tiêu đề (tên trường) phải để ở dòng 1, dữ liệu bắt đầu từ dòng 2 và không để trống dòng.
-Tuyệt đối không merge cell

Đặt Name cho từng bảng và từng trường dữ liệu. Nếu dùng Excel 2007 thì nên dùng chức năng Table, Excel 2003 thì nên dùng chức năng Accept labels in formulas, không cần đặt name cho tất cả các field dữ liệu.

-Các bảng dữ liệu phát sinh hàng ngày nên để mỗi bảng 1 sheet, tuy nhiên không tách ra theo mỗi tháng 1 sheet hay mỗi ngày 1 sheet.
 
Khóa học Quản trị dòng tiền

Xem nhiều

Webketoan Zalo OA