ĐỀ TÀI MỤC LỤC LỜI MỞ ĐẦU CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 1 1 Các khái niệm cơ bản 1 1 1 Khái niệm thực thể, thuộc tính, khoá 1 1 2 Khái niệm mối quan hệ thực thể liên kết 1 2 Quy trình xây dựng mô hình ER 1 2 1 Khái niệm mô hình ER 1 2 2 Quy trình xây dựng mô hình ER 1 3 Quy trình biến đổi mô hình thực thể ER sang mô hình quan hệ 1 3 1 Khái niệm mô hình quan hệ 1 3 2 Quy trình chuyển đổi từ mô hình thực thể ER sang mô hình quan hệ 1 3 2 1 Các nguyên tắc chuyển đổi mô hình ER sang mô hình quan hệ 1 3 2.
Trang 1Microsoft Office User
[COMPANY NAME]
ĐỀ TÀI
Xây dựng cơ sở dữ liệu quản lý bán hàng
Trang 2MỤC LỤCLỜI MỞ ĐẦU
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1 Các khái niệm cơ bản
1.1.1 Khái niệm thực thể, thuộc tính, khoá
1.1.2 Khái niệm mối quan hệ thực thể liên kết
1.2 Quy trình xây dựng mô hình ER
1.2.1 Khái niệm mô hình ER
1.2.2 Quy trình xây dựng mô hình ER
1.3 Quy trình biến đổi mô hình thực thể ER sang mô hình quan hệ
1.3.1 Khái niệm mô hình quan hệ
1.3.2 Quy trình chuyển đổi từ mô hình thực thể ER sang mô hình quan hệ
1.3.2.1 Các nguyên tắc chuyển đổi mô hình ER sang mô hình quan hệ
1.3.2.2 Cách chuyển đổi từ mô hình ER sang mô hình quan hệ
2.4 Biến đổi mô hình thực thể ER sang mô hình quan hệ
2.4.1 Quy trình biến đổi từ mô hình ER sang mô hình quan hệ
2.4.2 Bảng giá trị thuộc tính của các quan hệ
Trang 3Ngày nay ngành công nghệ thông tin đang phát triển nhanh và mạnh, khoa học công nghệ thực sự đã và đang đem lại hiệu quả lớn cho nền kinh tế xã hội, cho các doanh nghiệp tổ chức kinh doanh trong giai đoạn mở cửa này, đặc biệt là nâng cao hiệu quả trong quá trình quản lý
Trong nền kinh tế phát triển nhiều thành phần này thì quản lý bán hàng càng mang tính quyết định chính trong hiệu quả kinh doanh chính vì vậy việc ra đời những bài toán quản lý nói chung và quản lý bán hàng nói riêng là một điều tất yếu khách quan
Có thể nói rằng với sự phát triển của công nghệ thông tin thì việc quản lý thủ công không còn phù hợp nữa Ta có thể nhận thấy một số yếu kém của việc quản lý theo phương pháp thủ công như: Thông tin về đối tượng quản lý nghèo nàn, lạc hậu, không thường xuyên cập nhật Việc lưu trữ bảo quản khó khăn, thông tin lưu trữ trong đơn vị không nhất quán, dễ bị trùng lặp giữa các bộ phận đặc biệt là mất rất nhiều thờigian và công sức để thống kê, để phân tích đưa ra các thông tin phục vụ việc ra quyết định Do đó, việc sử dụng các thành tựu của công nghệ thông tin trong quản lý ngày càng rộng rãi và mang lại hiệu quả cao, khắc phục được những nhược điểm của hệ thống quản lý cũ, các bài toán quản lý được đưa vào máy tính và ngày càng được tối
ưu hoá, giản được thời gian cũng như chi phí cho quá trình xử lý, mang lại hiệu quả lớn trong kinh doanh
Với mong muốn hiểu được tầm quan trọng của việc phân tích dữ liệu, thiết kế một hệ thống thông tin tự động hoá trong lĩnh vực quản lý Nhóm 1 chúng em đã cố gắng và thống nhất chọn đề tài tạo mô hình cơ sở dữ liệu quản lý bán hàng thông qua
hệ quản trị cơ sở dữ liệu Đây cũng chỉ là một phương án trong rất nhiều phương án khác Nó có thể chưa hoàn thiện nhưng cũng phần nào giúp các bạn hiểu được vai của việc thiết kế dữ liệu trong bài toán quản lí nói chung
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
Trang 41.1 Các khái niệm cơ bản
1.1.1 Khái niệm thực thể, thuộc tính, khoá:
Thực thể: là một sự vật trong thế giới thực và có sự tồn tại độc lập, là đối tượng
trong hệ thống mà ta muốn thu thập và lưu trữ dữ liệu về chúng trong CSDL để quản lý
Thuộc tính: là đặc trưng dùng để mô tả đặc điểm cụ thể của thực thể theo cách
xác định nào đó, được sử dụng để biểu diễn nó
Khóa: là thuộc tính dùng để xác định sự duy nhất của một thực thể trong kiểu
thực thể
1.1.2 Khái niệm mối quan hệ thực thể liên kết:
Liên kết là sự ghép nối, phản ánh mối quan hệ giữa hai hay nhiều thực thể khác
nhau
Liên kết 1-1: Hai thực thể A và B có mối liên kết 1-1 nếu một thực thể kiểu A
chỉ tương ứng với nhiều nhất một thực thể kiểu B và ngược lại
Liên kết 1-n: Hai thực thể A và B có mối liên kết 1-n nếu một thực thể kiểu A
tương ứng với 0, 1 hoặc nhiều thực thể kiểu B, và một thực thể kiểu B chỉ tương ứng với nhiều nhất một thực thể kiểu A
Liên kết n-n: Hai thực thể A và B có mối liên kết n-n nếu một thực thể kiểu A
tương ứng với 0, 1 hoặc nhiều thực thể kiểu B và ngược lại mỗi kiểu thực thể B tương ứng với 0, 1 hoặc nhiều kiểu thực thể A
1.2 Quy trình xây dựng mô hình ER
1.2.1 Khái niệm mô hình ER:
Mô hình ER là sự thể hiện các tập thực thể, các thuộc tính và các mối liên kết
giữa các thực thể
Trang 5Mô hình biểu diễn bởi các đỉnh và các cung nối giữa các đỉnh Trong đó các đỉnh thể hiện của tập thực thể, các thuộc tính, các liên kết; các cung để nối giữa các tập thực thể với các mối liên kết hoặc nối giữa tập thực thể và các thuộc tính.
1.2.2 Quy trình xây dựng mô hình ER
Bước 3: Xác định mối quan hệ
Bước 4: Xác định thuộc tính và gắn thuộc tính cho tập thực thể và mối quan hệ
Bước 5: Quyết định thuộc tính khóa
Bước 6: Vẽ biểu đồ mô hình thực thể ER
Bước 7: Chuẩn hóa biểu đồ
1.3 Quy trình biến đổi mô hình ER sang mô hình quan hệ
1.3.1 Khái niệm mô hình quan hệ:
Mô hình quan hệ biểu thị dữ liệu trong một CSDL như một tập các quanhệ Một cách không hình thức có thể coi một quan hệ là một bảng giá trị gồm các hàng và các cột Mỗi hàng trong bảng là một tập các giá trị gồm các hàng và các cột Mỗi hàngtrong bảng là một tập các giá trị có liên quan đến nhau, cácgiá trị này biểu thị một sự kiện tương ứng với một thực thể hay một mối quan hệ trong thế giới thực Tên bảng
và tên các cột dùng để giúp giải thích ý nghĩa của các giá trị trong mỗi hàng
Thông thường tên một cột thể hiện một thuộc tính cần nói tới của các thực thể, khi mà thông tin về các thực thể này được thể hiện trong bảng Mọi giá trị trong một cột đều cùng một kiểu dữ liệu
1.3.2 Quy trình chuyển đổi từ mô hình ER sang mô hình quan hệ
1.3.2.1 Các nguyên tắc chuyển mô hình thực thể ER sang mô hình quan hệ
Trang 6 Chuyển các tập thực thể:
Mỗi thực thể được chuyển thành một quan hệ cùng tên và danh sách thuộc tính Đối với kiểu thực thể thông thường (regular entity type): Khóa của quan hệ là khóa của kiểu thực thể Thuộc tính của quan hệ cũng chính là thuộc tính của kiểu thực thể Quan hệ không chứa các thuộc tính đa trị mà chỉ chứa thuộc tính thành phần của những thuộc tính phức hợp
Chuyển đổi mối quan hệ 3 ngôi sao:
Chuyển thành quan hệ mới, có khoá chính gồm 3 thuộc tính khóa của 3 thực thểtham gia mối kết hợp Thuộc tính mối kết hợp (nếu có) sẽ trở thành thuộc tính của quan hệ mới
Chuyển đổi mối quan hệ 1 – 1:
Thuộc tính khóa bên này sẽ làm khóa ngoại của bên kia hoặc ngược lại
Chuyển đổi mối quan hệ 1-n:
Thuộc tính khóa bên 1 làm khóa ngoại bên nhiều
Chuyển đổi mối quan hệ n-n:
Chuyển thành quan hệ mới có khoá chính gồm 2 thuộc tính khóa của 2 quan hệ trở lên, thuộc tính mối kết hợp (nếu có) trở thành thuộc tính của quan hệ mới
Chuyển đổi mối quan hệ đa trị:
Chuyển thành quan hệ mới có khoá chính gồm thuộc tính đa trị và thuộc tính khóa của thực thể Sau khi chuyển thành quan hệ mới, thuộc tính đa trị sẽ tự động biếnmất khỏi thực thể cũ
1.3.2.2 Cách chuyển đổi từ mô hình thực thể ER sang mô hình quan hệ
Bước 1: Mỗi thực thể chuyển thành một quan hệ cùng tên và danh sách thuộc tính
Thuộc tính khóa trở thành khóa chính của quan hệ
Trang 7Bước 2: Chuyển đổi từng loại thực thể thành một loại quan hệ tương ứng.
• Chuyển đổi các liên kết 1 – 1 kết hợp hai thực thể thành một thực thể
• Các liên kết 1 – n lấy khóa bên có nhiều thực thể và chuyển đổi nó thành khóa ngoại
• Mối quan hệ n – n tạo thành một kiểu quan hệ mới
Bước 3: Hoàn thành việc chuyển đổi bằng cách kiểm tra lại chuẩn của các mối quan
hệ vừa chuyển đổi có chính xác và phù hợp hay chưa
1.4 Giới thiệu về SQL
1.4.1 Khái niệm
SQL (Structured Query Language) là một ngôn ngữ máy tính dùng để tạo,
chỉnh sửa, và truy vấn dữ liệu từ một hệ quản trị cơ sở dữ liệu quan hệ
và truy vấn cơ sở dữ liệu được đặt tên là Structured English Query Language, viết tắt
là “SEQUEL” Sau này, tên viết tắt SEQUEL được rút gọn thành SQL Mặc dù SQL
bị ảnh hưởng bởi công trình của tiến sĩ Codd nhưng nó không do tiến sĩ Codd thiết kế
mà được thiết kế bởi Donald D Chamberlin và Raymond F Boyce tại IBM
Năm 1986, SQL được thừa nhận là tiêu chuẩn của ANSI (American NationalStandards Institute) và được ISO (International Organization for Standardization) thừanhận một năm sau đó, năm 1987 Tiêu chuẩn SQL đã trải qua một số phiên bản: SQL-
86, SQL-89, SQL-92, SQL:1999, SQL:2003, SQL:2011
1.4.3 Vai trò
Trang 8
SQL cho phép người dùng thực hiện các công việc sau:
• Tạo một cơ sở dữ liệu và cấu trúc các quan hệ
• Thực hiện các thao tác quản lý dữ liệu cơ bản, như thêm mới, hiệu chỉnh và xóa
dữ liệu thuộc một quan hệ nào đó
• Thực hiện các truy vấn đơn giản và phức tạp
SQL giúp cho người dùng thực hiện các nhiệm vụ trên một cách dễ dàng, vớicác cấu trúc và cú pháp lệnh đơn giản
SQL là một ngôn ngữ có tính dịch chuyển cao, do ngôn ngữ tuân theo nhữngchuẩn đã được xác định nên người dùng có thể sử dụng cùng một cấu trúc và cú pháplệnh khi họ chuyển từ một hệ quản trị cơ sở dữ liệu này sang một hệ quản trị cơ sở dữliệu khác
SQL là một “ngôn ngữ hướng chuyển đổi” (transform - oriented language),ngôn ngữ được thiết kế để sử dụng các quan hệ trong việc chuyển đổi các đầu vàothành các đầu ra yêu cầu
1.4.4 Các câu lệnh cơ bản
Các lệnh SQL tiêu chuẩn để tương tác với cơ sở dữ liệu quan hệ là CREATE, SELECT, INSERT, UPDATE, DELETE và DROP Các lệnh này có thể được phân
thành các nhóm sau dựa trên bản chất của chúng
DDL – Ngôn ngữ định nghĩa dữ liệu (Data Definition Language)
CREATE Tạo một bảng mới hoặc các đối tượng khác trong cơ sở dữ liệu
ALTER Sửa đổi một đối tượng cơ sở dữ liệu hiện có, chẳng hạn như một bảng
DROP Xóa toàn bộ một bảng hoặc các đối tượng khác trong cơ sở dữ liệu
Trang 9 DML - Ngôn ngữ thao tác dữ liệu (Data Manipulation Language)
SELECT Lấy ra các bảng ghi nhất định từ một hoặc nhiều bảng
DCL - Ngôn ngữ điều khiển dữ liệu (Data Control Language)
REVOKE Lấy lại các quyền được cấp từ người dùng
CHƯƠNG 2: XÂY DỰNG CƠ SỞ DỮ LIỆU CHO HỆ THỐNG QUẢN LÍ
BÁN HÀNG
2.1 Đặt bài toán
Trang 10Quản lý bán hàng là người đứng đầu bộ phận bán hàng của cửa hàng, chi nhánhhay công ty Quán lý bán hàng chịu trách nhiệm giám sát, chỉ đạo đối với toàn bộ hoạtđộng bán hàng, đưa ra mục tiêu doanh số và xây dựng kế hoạch triển khai giúp nhânviên hoàn thành mục tiêu, quản lý giờ giấc làm việc của nhân viên, phân chia ca làmcũng như công việc cụ thể,…
Siêu thị điện thoại THẾ GIỚI DI ĐỘNG (TGDĐ) là trung tâm mua bán điện thoại với nhiều hình thức: giao dịch, trao đổi,… Bài toán đặt ra là siêu thị cần quản lý việc bán hàng hàng tháng của một cơ sở tại đường Hồ Tùng Mậu:
- Nguồn hàng của siêu thị có thể do các nhà cung cấp, nhà sản xuất hay các công ty trong và ngoài nước cung cấp
- Đối tượng bán hàng của siêu thị gồm người tiêu dùng, các cửa hàng bán điện thoại nhỏ hay các công ty có quan hệ trao đổi hàng hóa với siêu thị
- Siêu thị quản lý rất nhiều các mặt hàng như Nokia, Oppo, Samsung, Apple,…
- Toàn siêu thị có quầy thu ngân, kế toán; quầy kĩ thuật; quầy chăm sóc khách hàng,…
Vì vậy cần xây dựng cơ sở dữ liệu quản lý việc bán hàng để giúp nhân viên dễ dàng hơn trong việc quản lý của mình, tránh các thiệt hại không đáng có do sai sót
2.2 Mô tả bài toán
Siêu thị THẾ GIỚI DI ĐỘNG chuyên bán hàng hoá điện thoại với nhiều mẫu
mã, nhiều nhãn hàng đa dạng phục vụ nhu cầu của nguời tiêu dùng Trong siêu thịđược chia thành nhiều gian hàng, mỗi gian hàng chứa từng loại nhãn hàng riêng biệt
để thuận tiện cho việc bán cũng như kiểm kê và quản lí
Khi nhập hàng, siêu thị sẽ điều tra về thị trường cũng như nhu cầu của kháchhàng, chọn ra mặt hàng nào được ưa chuộng nhất thời điểm hiện tại rồi sau đó liên hệvới các nhà cung cấp để nhập hàng về Sau khi hàng được nhập đến kho, nhân viênquản lí kho sẽ kiểm kê số lượng, loại hàng, chất lượng và giá thành sao cho khớp vớihoá đơn nhập Khi hàng hoá đầy đủ và chất lượng tốt sẽ được đưa đến gian hàng phục
vụ người tiêu dùng
Trang 11Khi xuất hàng hoá, với khách hàng mỗi khách hàng, siêu thị đều có nhân viên tưvấn, giúp đỡ khách hàng chọn được sản phẩm ưng ý nhất rồi sau đó ra quầy thanhtoán.
Mô tả bài toán quản lý bán hàng
Siêu thị THẾ GIỚI DI ĐỘNG cần quản lý việc bán các mặt hàng với mô tả nhưsau:
- Khi bán hàng, cửa hàng sẽ lưu lại thông tin khách hàng
- Mỗi lần bán hàng, cửa hàng sẽ tạo ra các hóa đơn xuất để lưu trữ thông tin mặt hàng,ngày bán, số lượng bán, số tiền
- Mỗi hóa đơn sẽ do một nhân viên tư vấn phụ trách việc tư vấn, làm thủ tục mua hàngcho khách để siêu thị tiện việc quản lý
- Sau mỗi đơn hàng, nhân viên chăm sóc tổng đài sẽ hỗ trợ khách hàng khiếu nại nếu
có trục trặc phát sinh Nếu có trục trặc khách hàng sẽ được nhân viên kỹ thuật bảo hành máy
- Cuối giờ làm, nhân viên thu ngân, kế toán và người quản lí cần tổng kết số lượng đơn hàng cũng như số tiền hàng
2.3 Xây dựng mô hình ER
2.3.1 Xác định các thực thể, thuộc tính, khoá
NHANVIEN (MaNV, HoTenNV, NamSinh, GioiTinh, DiaChi, DienThoai, ChucVu) KHACHHANG (MaKH, HoTenKH, DiaChi, DienThoai)
SANPHAM (MaSP, TenSP, DonGia, SoLuong, NgayNhap)
NHACUNGCAP (MaNCC, TenNCC, Diachi, DienThoai, Fax)
HOADONNHAP (MaHDNhap, MaSP, MaNV, TenSP, TenNCC, SoLuong, DonGia,
ThanhTien, NgayNhap)
HOADONXUAT (MaHDXuat, MaSP, MaNV, HoTenKH, TenSP, SoLuong, DonGia,
ThanhTien, NgayXuat)
Trang 12SANPHAMBAOHANH (MaBH, MaSP, TenSP, NgayNhanBH, HoTenKH,
NgayTraBH, NoiDungBH, TrangThaiBH, PhiBH)
KHO (MaKho, MaSP, MaNV,TenSPTonKho, SoLuong, TenNVQuanLi)
HOPDONG (MaHĐ, MaNCC, MaSP, NgayKi, SoLuong, DonGia, ThanhTien)
2.3.2 Xác định các mối quan hệ liên kết thực thể
Mỗi nhân viên tư vấn cho nhiều khách hàng, mỗi khách hàng được tư vấn bởi một nhân viên
Trang 132.4 Biến đổi mô hình ER thành mô hình quan hệ
2.4.1 Quy trình chuyển đổi từ mô hình ER sang mô hình quan hệ
Dựa theo 3 bước trong phương pháp chuyển đổi từ mô hình thực thể sang mô hình quan hệ, ta được mô hình quan hệ sau:
Bước 1: Chuyển đổi thực thể mạnh (các tập thực thể mạnh được chuyển thành quan
hệ có cùng tên và cùng tập thuộc tính, cùng khóa)
NHANVIEN (MaNV, HoTenNV, NamSinh, GioiTinh, DiaChi, DienThoai, ChucVu)
Trang 14KHACHHANG (MaKH, HoTenKH, DiaChi, DienThoai)
SANPHAM (MaSP, TenSP, DonGia, SoLuong, NgayNhap)
NHACUNGCAP (MaNCC, TenNCC, Diachi, DienThoai, Fax)
HOADONNHAP (MaHDNhap, MaSP, MaNV, TenSP, TenNCC, SoLuong, DonGia,
ThanhTien, NgayNhap)
HOADONXUAT (MaHDXuat, MaSP, MaNV, HoTenKH, TenSP, SoLuong, DonGia,
ThanhTien, NgayXuat)
SANPHAMBAOHANH (MaBH, MaSP, TenSP, NgayNhanBH, HoTenKH,
NgayTraBH, NoiDungBH, TrangThaiBH, PhiBH)
KHO (MaKho, MaSP, MaNV,TenSPTonKho, SoLuong, TenNVQuanLi)
HOPDONG (MaHĐ, MaNCC, MaSP, NgayKi, SoLuong, DonGia, ThanhTien) Bước 2: Chuyển đổi dựa theo mối liên kết
Các lược đồ quan hệ tương ứng với liên kết 1-1
- Mối quan hệ NHACUNGCAP và HOPDONG
Các lược đồ quan hệ tương ứng với mối liên kết 1-n
- Mối quan hệ NHANVIEN và KHACHHANG:
Trang 15- Mối quan hệ KHO và SANPHAM
- Mối quan hệ NHACUNGCAP và HOADONNHAP
Các lược đồ tương ứng với mối quan hệ n-n
- Mối quan hệ HOADONNHAP và SANPHAM
Trang 16- Mối quan hệ HOADONXUAT và SANPHAM
- Mối quan hệ KHACHHANG và SANPHAMBAOHANH
- Mối quan hệ KHACHHANG và HOADONXUAT
Trang 17Bước 3: Kết luận
Mô hình quan hệ gồm:
NHANVIEN (MaNV, HoTenNV, NamSinh, GioiTinh, DiaChi, DienThoai, ChucVu) KHACHHANG (MaKH, HoTenKH, DiaChi, DienThoai)
SANPHAM (MaSP, TenSP, DonGia, SoLuong, NgayNhap)
NHACUNGCAP (MaNCC, TenNCC, Diachi, DienThoai, Fax)
HOADONNHAP (MaHDNhap, MaSP, MaNV, TenSP, TenNCC, SoLuong, DonGia,
ThanhTien, NgayNhap)
HOADONXUAT (MaHDXuat, MaSP, MaNV, HoTenKH, TenSP, SoLuong, DonGia,
ThanhTien, NgayXuat)
SANPHAMBAOHANH (MaBH, MaSP, TenSP, NgayNhanBH, HoTenKH,
NgayTraBH, NoiDungBH, TrangThaiBH, PhiBH)
KHO (MaKho, MaSP, MaNV,TenSPTonKho, SoLuong, TenNVQuanLi)
HOPDONG (MaHĐ, MaNCC, MaSP, NgayKi, SoLuong, DonGia, ThanhTien)
2.4.2 Bảng giá trị thuộc tính của các quan hệ
Bảng NHANVIEN
Bảng KHACHHANG