Thiết kế cơ sở dữ liệu website bán hàng là công việc rất quan trọng khi bắt đầu triển khai kinh doanh. Tuy nhiên, đối với những người mới hiểu được và thiết kế cơ sở dữ liệu là một việc khá phức tạp.
Thế nên, Miko Tech sẽ hướng dẫn thiết kế cơ sở dữ liệu website bán hàng đơn giản nhất ngay dưới đây. Bài viết sẽ khái quát về thiết kế cơ sở dữ liệu website bán hàng là gì, nguyên tắc thiết kế cơ sở dữ liệu website bán hàng và hướng dẫn thiết kế cơ sở dữ liệu website bán hàng.
Thiết kế cơ sở dữ liệu là việc tổ chức dữ liệu theo một mô hình cơ sở dữ liệu . Người thiết kế xác định dữ liệu nào phải được lưu trữ và cách các phần tử dữ liệu liên kết với nhau. Với thông tin này, họ có thể bắt đầu khớp dữ liệu với mô hình cơ sở dữ liệu. Hệ quản trị cơ sở dữ liệu quản lý dữ liệu tương ứng.
Thiết kế cơ sở dữ liệu liên quan đến việc phân loại dữ liệu và xác định các mối quan hệ qua lại. Biểu diễn lý thuyết của dữ liệu này được gọi là bản thể luận . Bản thể luận là lý thuyết đằng sau thiết kế của cơ sở dữ liệu.
Mô hình hóa việc thiết kế cấu trúc cơ sở dữ liệu
Trong đó:
People (con người): những người tham gia vào hệ thống, bạn cần làm việc với những người này để xác định các dữ liệu cần lưu trữ, cần khai thác.
Documents (tài liệu): bạn cần khảo sát các tài liệu trong hệ thống để xác định dữ liệu.
Facilities(cơ sở vật chất): bạn cần quan tâm những cơ sở vật chất nào cần quản lý.
Other systems(hệ thống khác, hệ thống tương tự): bạn cần tìm hiểu nghiên cứu các hệ thống tương tự để thu thập thêm dữ liệu.
Trước khi bước vào việc thiết kế Database bạn cần nắm một số nguyên tắc quan trọng sau:
Chính xác
Tránh trùng lặp
Dễ hiểu
Chọn đúng thuộc tính và kiểu thuộc tính
Chọn đúng mối quan hệ
Chú ý: nếu bạn nào theo dõi loạt series hướng dẫn làm website bán hàng này thì cần chú ý kỹ các bảng, chức năng và các trường dữ liệu này, vì trong tất cả các bài hướng dẫn mình đều sử dụng tới 1 trong các bảng này.
Với bảng quản trị này chúng ta cần lưu các trường thông tin :
id : khóa chính và trường dữ liệu này mình để tự tăng
name: họ tên
username: tên đăng nhập
password: mật khẩu
Và kết quả sẽ được như hình phía dưới.
Bảng này để lưu các thành viên của website,với bảng thành viên này chúng ta cần lưu các trường thông tin :
id : khóa chính
name: họ tên
email: email,sử dụng để đăng nhập
password: mật khẩu đăng nhập
address: địa chỉ
created: thời điểm đăng ký thành viên
Với bảng danh mục sản phẩm này chúng ta cần lưu các trường thông tin :
id : khóa chính và trường dữ liệu này mình để tự tăng
name: tên danh mục
parent_id: id của danh mục cha, vì danh mục sẽ được phân theo nhiều cấp, tạm thời mình gọi là cha con nhé
sort_order: vị trí sắp xếp(hiển thị), cái này không quan trọng mấy
Và kết quả sẽ được như hình phía dưới.
Xây dựng bảng danh mục sản phẩm
– Với bảng sản phẩm này chúng ta cần lưu các trường thông tin :
id : khóa chính và trường dữ liệu này mình để tự tăng
catalog_id: id của danh mục sản phẩm,vì 1 sản phẩm phải thuộc 1 danh mục nào đó
name: tên sản phẩm
price: giá của sản phẩm
discount: lưu chiết khấu, giảm giá
price: giá của sản phẩm
image_link: lưu link file ảnh minh họa cho sản phẩm
image_list: lưu danh sách link file ảnh kèm theo cho sản phẩm
created: thời điểm tạo sản phẩm
view: lượt xem sản phẩm này
Ngoài ra còn rất nhiều các trường dữ liệu hoặc các bảng khác liên quan tới việc lưu thông tin sản phẩm như,quà tặng,khuyến mãi,thuộc tính…Những phần này các bạn có thể phát triển thêm
Và kết quả sẽ được như hình phía dưới.
Xây dựng bảng lưu thông tin sản phẩm
Đây là bảng rất quan trọng và không thể thiếu trong 1 website thương mại điện tử thanh toán trực tuyến,bảng này có chức năng lưu thông tin của toàn bộ giao dịch trên website. Với bảng giao dịch này chúng ta cần lưu các trường thông tin :
id : khóa chính và trường dữ liệu này mình để tự tăng
status: lưu trạng thái của giao dịch,dựa vào trạng thái này để biết giao dịch đã thanh toán thành công chưa,ví dụ 1 là thành công,0 là chưa thanh toán
user_id: id của thành viên mua hàng,nếu khách không có tài khoản thị trường này không cần lưu
user_name: tên của khách hàng
user_email: email của khách hàng
user_phone: số điện thoại của khách hàng
amount: tổng số tiền cần thanh toán,và đây chính là tổng số tiền chúng ta gửi sang bên cổng thanh toán
payment: tên cổng thanh toán mà khách hàng chọn để thanh toán
payment_info: toàn bộ thông trả về từ bên cổng thanh toán gủi cho chúng ta
message: nội dung yêu cầu của khách hàng
security: mã bảo mật cho giao dịch,1 số cổng thanh toán ta cần gửi mã bảo mật
created: thời điểm tạo giao dịch,dựa vào trường này mà chúng ta hoàn toàn có thể làm thống kê báo cáo doanh thu theo thời gian
Khi sang chức năng mua hàng và thanh toán trực tuyến hoặc thống kê báo cáo chúng ta sẽ phải làm việc nhiều với bảng này.
Và kết quả chúng ta sẽ có bảng dữ liệu sau:
Bảng lưu thông tin giao dịch của website
Ở trên chúng ta đã có bảng giao dịch rồi vậy còn bảng đơn hàng ở đây để làm gì nhỉ?đây chính là bảng lưu chi tiết của giao dịch,1 giao dịch có thể có nhiều đơn hàng,ví dụ trong giỏ hàng của bạn mua 2 loại sản phẩm là 1 cái tivi và 2 cái điện thoại,lúc này trong bảng giao dịch chỉ có 1 dòng dữ liệu duy nhất,nhưng trong bảng đơn hàng này sẽ có thêm 2 dòng dữ liệu.Và chi tiết các thông tin trong bảng này cần lưu như sau:
id : khóa chính và trường dữ liệu này mình để tự tăng
transaction_id: id của giao dịch,1 giao dịch có thể có nhiều đơn hàng và 1 đơn hàng phải thuộc 1 giao dịch nào đó.
product_id: id của sản phẩm
qty: số lượng sản phẩm trong đơn hàng,như ví dụ trên thì với tivi thì qty = 1,và điện thoại thì qty = 2
amount: số tiền của đơn hàng,các bạn lưu ý là số tiền(amount) trong bảng giao dịch sẽ bằng tổng số tiền trong bảng đơn hàng tương ứng nhé
data: lưu dữ liệu nào đó mà bạn muốn
status: đây chính là trạng thái của đơn hàng,và trạng thái này cho chúng ta biết sản phẩm của đơn hàng này đã được gửi cho khách chưa,ví dụ status = 1 là đã gửi,status = 0 là chưa gửi hàng cho khách
Các bạn cần phân biệt chính xác amount và status trong bảng transaction và amount và status trong bảng order nhé.
Và kết quả sẽ được như hình phía dưới:
Bảng lưu thông tin đơn hàng
Như vậy Miko Tech đã hướng dẫn thiết kế cơ sở dữ liệu website bán hàng đơn giản với các nội dung thiết kế cơ sở dữ liệu website bán hàng là gì, nguyên tắc thiết kế cơ sở dữ liệu website bán hàng và hướng dẫn thiết kế cơ sở dữ liệu website bán hàng.
Hy vọng bài viết này sẽ hữu ích với bạn trong việc thiết kế website bán hàng và thiết kế cơ sở dữ liệu chuẩn chỉnh nhất. Nếu bạn có bất kỳ thắc mắc nào về việc thiết kế website bán hàng, liên hệ ngay với Miko Tech. Đội ngũ nhân viên tư vấn luôn sẵn sàng hỗ trợ bạn bất cứ lúc nào và nhanh nhất.