Hướng dẫn thiết kế database web bán hàng chi tiết từ con số 0

Việc hiểu và thiết kế database web bán hàng là một điều không hề dễ dàng đặc biệt là đối với các coder mới bắt đầu học. Người thiết kế phải 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. Nếu bạn đang muốn thiết kế website bán hàng nhưng chưa biết định hướng xây dựng cơ sở dữ liệu như thế nào thì hãy tham khảo ngay bài viết dưới đây.

Bài viết sẽ khái quát cho người đọc những thông tin về thiết kế database web bán hàng là gì, nguyên tắc thiết kế database web bán hàng và cách thiết kế database web bán hàng.

Thiết kế database web bán hàng là gì?

Thiết kế database (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.

Nguyên tắc thiết kế database web bán hàng

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.

Hướng dẫn xây dựng database khi thiết kế website bán hàng

1. Xây dựng bảng quản trị website (admin)

Với bảng quản trị này chúng ta cần lưu các trường thông tin :

  1. id : khóa chính và trường dữ liệu này mình để tự tăng
  2. name: họ tên
  3. username: tên đăng nhập
  4. password: mật khẩu

Và kết quả sẽ được như hình phía dưới.

2. Xây dựng thành viên (user)

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 :

  1. id : khóa chính
  2. name: họ tên
  3. email: email,sử dụng để đăng nhập
  4. password: mật khẩu đăng nhập
  5. address: địa chỉ
  6. created: thời điểm đăng ký thành viên

3. Xây dựng bảng danh mục sản phẩm (catalog)

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 :

  1. id : khóa chính và trường dữ liệu này mình để tự tăng
  2. name: tên danh mục
  3. 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é
  4. 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

4. Xây dựng bảng sản phẩm (product)

– Với bảng sản phẩm này chúng ta cần lưu các trường thông tin :

  1. id : khóa chính và trường dữ liệu này mình để tự tăng
  2. 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 đó
  3. name: tên sản phẩm
  4. price: giá của sản phẩm
  5. discount: lưu chiết khấu, giảm giá
  6. price: giá của sản phẩm
  7. image_link: lưu link file ảnh minh họa cho sản phẩm
  8. image_list: lưu danh sách link file ảnh kèm theo cho sản phẩm
  9. created: thời điểm tạo sản phẩm
  10. 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

5. Xây dựng bảng giao dịch (transaction)

Đâ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 :

  1. id : khóa chính và trường dữ liệu này mình để tự tăng
  2. 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
  3. 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
  4. user_name: tên của khách hàng
  5. user_email: email của khách hàng
  6. user_phone: số điện thoại của khách hàng
  7. 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
  8. payment: tên cổng thanh toán mà khách hàng chọn để thanh toán
  9. payment_info: toàn bộ thông trả về từ bên cổng thanh toán gủi cho chúng ta
  10. message: nội dung yêu cầu của khách hàng
  11. 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
  12. 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

6. Xây dựng bảng đơn hàng (order)

Ở 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:

  1. id : khóa chính và trường dữ liệu này mình để tự tăng
  2. 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 đó.
  3. product_id: id của sản phẩm
  4. 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
  5. 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é
  6. data: lưu dữ liệu nào đó mà bạn muốn
  7. 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, qua bài viết trên, bạn đọc đã có thêm kiến thức về thiết kế database web bán hàng là gì, nguyên tắc thiết kế database web bán hàng và cách thiết kế database web bán hàng.

Hy vọng những chia sẻ trên sẽ giúp ích cho bạn trong quá trình thiết kế cơ sở dữ liệu cho website bán hàng. Chúc bạn thành công.

Nhận xét

Bài đăng phổ biến từ blog này

Thiết kế website bán hàng

Thiết kế lập trình website là gì?

Thiết kế website chuẩn SEO tại Bình Thạnh