Tải bản đầy đủ (.doc) (72 trang)

Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (798.11 KB, 72 trang )

Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
MỤC LỤC
DANH MỤC BẢNG, HÌNH 2
LỜI CẢM ƠN 3
LỜI NÓI ĐẦU 4
Các đối tượng của MYSQL 10
3.2. THIẾT KẾ GIAO DIỆN CHƯƠNG TRÌNH QUẢN LÝ BÁN HÀNG 56
3.2.1.Thiết kế hệ thống Menu của chương trình 56
3.2.2. Các chức năng của từng Menu 57
3.2.2.1.Menu File đăng ký 57
CHƯƠNG 4 70
ĐÁNH GIÁ KẾT QUẢ VÀ KẾT LUẬN 70
4.1 Đánh giá kết quả 70
4.2 Hướng phát triển 71
4.3 Kết Luận 71
TÀI LIỆU THAM KHẢO 73
SVTH : Phạm Quang Huy
1
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
DANH MỤC BẢNG, HÌNH
DANH MỤC BẢNG, HÌNH 2
LỜI CẢM ƠN 3
LỜI NÓI ĐẦU 4
Các đối tượng của MYSQL 10
3.2. THIẾT KẾ GIAO DIỆN CHƯƠNG TRÌNH QUẢN LÝ BÁN HÀNG 56
3.2.1.Thiết kế hệ thống Menu của chương trình 56
3.2.2. Các chức năng của từng Menu 57
3.2.2.1.Menu File đăng ký 57
CHƯƠNG 4 70
ĐÁNH GIÁ KẾT QUẢ VÀ KẾT LUẬN 70
4.1 Đánh giá kết quả 70


4.2 Hướng phát triển 71
4.3 Kết Luận 71
TÀI LIỆU THAM KHẢO 73
SVTH : Phạm Quang Huy
2
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
LỜI CẢM ƠN
Sau 4 năm học tập tại trường Đại Học Thủy Lợi nói chung và khoa Công
Nghệ Thông Tin nói riêng, em đã nhận được sự chỉ bảo và giúp đỡ của các thầy cô
giáo và các bạn rất nhiều.
Đầu tiên, em xin chân thành cảm ơn thầy cô giáo Trường Đại Học Thủy Lợi
và đặc biệt là các thầy cô Khoa Công Nghệ Thông Tin đã dạy cho em có được
những kiến thức vững chắc để có thể phục vụ cho việc hoàn thành đồ án.
Đặc biệt, trong 14 tuần làm đồ án, em đã được sự hướng dẫn tận tình của
thầy giáo Nguyễn Văn Nam. Em xin chân thành cảm ơn thầy đã giúp đỡ, bổ sung
cho em những kiến thức cơ bản, và cho em những lời khuyên, sự góp ý để em có
thể hoàn thành đồ án một cách nhanh chóng và có hiệu quả nhất.
Em cũng xin chân thành cảm ơn gia đình, người thân và bạn bè đã luôn bên
cạnh và tạo mọi điều kiện thuận lợi để cho em có thể hoàn thành đồ án này.
Trong suốt quá trình làm đồ án “Xây dựng phần mềm quản lý và bán hàng
cửa hàng máy tính ” em đã cố gắng hết sức để hoàn thiện chương trình một cách tốt
nhất, nhưng do kiến thức không đủ, thời gian làm đồ án có hạn và cũng là lần đầu
tiên xây dựng phần mềm quản lý nên cũng không thể tránh khỏi những sai sót. Vì
thế em rất mong nhận được sự thông cảm từ các thầy cô giáo và các bạn. Em rất
mong nhận được những góp ý của thầy cô và các bạn để chương trình của em trở
nên hoàn thiện hơn. Một lần nữa em xin chân thành cảm ơn thầy cô, bạn bè và gia
đình đã giúp đỡ em trong suốt thời gian qua!
EM XIN CHÂN THÀNH CẢM ƠN
SVTH : Phạm Quang Huy
3

Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
LỜI NÓI ĐẦU
Ngày nay công nghệ thông tin đã phát triển vượt bậc và xâm nhập vào mọi
lĩnh vực của đời sống xã hội. Máy tính đã giúp đỡ con người trong rất nhiều hoạt
động, làm tăng hiệu quả của công việc, làm giảm sức lao động của con người và
làm thỏa mãn những ước muốn của con người.
Yêu cầu của con người là vô hạn và công nghệ cũng không ngừng phát triển ở
đó. Trước đây các ứng dụng tin học của Việt Nam trong đó có cả những ứng dụng
kĩ thuật đều được thực hiện trên các máy tính đơn lẻ, ít đòi hỏi lao động tập thể mà
chỉ do một hoặc hai cá nhân phụ trách. Tuy nhiên ngày nay, nhờ có máy tính mà
người ta đã phát triển những hệ thống lớn có quy mô quốc gia, thậm chí cả khu vực
và toàn thế giới. Những hệ thống đó đòi hỏi phải có rất nhiều người tham gia làm
việc. Chính nhờ việc xây dựng các phần mềm quản lí hệ thống thông tin, các thao
tác thực hiện trên máy tính được hoạt động có hiệu quả, tính chính xác cao, nhanh
chóng, và thuận tiện với người sử dụng, đặc biệt là có tính kế thừa.
Với tầm quan trọng của việc phân tích thiết kế hệ thống thông tin thì nhu cầu
học tập và nghiên cứu về công việc này trở nên hết sức cần thiết. Vì thế em đã tìm
hiểu và nghiên cứu về xây dựng phần mềm quản lý dựa vào phân tích thiết kế hệ
thống thông tin, đồ án của em có tên là:” Xây dựng phần mền quản lý và bán hàng
cửa hàng máy tính”. Do bước đầu làm quen với việc thiết kế một phần mềm quản lý
nên em chưa có kinh nghiệm nhiều, bên cạnh đó còn nhiều hạn chế trong kiến thức
nên có nhiều thiếu sót, mong thầy cô và các bạn góp ý để em có thể hoàn thiện đề
tài của mình một cách tốt nhất. Bố cục đồ án gồm các phần như sau:
Chương 1 Tổng quan
Chương 2 Phân tích hệ thống
Chương 3 Thiết kế hệ thống
Chương 4 Đánh giá kết quả và kết luận
SVTH : Phạm Quang Huy
4
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính

CHƯƠNG 1
TỔNG QUAN
1.1. Tầm quan trọng của ứng dụng tin học trong quản lý
Khoa học kỹ thuật hiện nay phát triển ngày càng cao và có những bước tiến
vượt bậc, được ứng dụng trong mọi lĩnh vực, ngành nghề. Và công nghệ thông tin là
một ngành như vậy. Do nền kinh tế phát triển mạnh theo hướng mở rộng, hoà nhập
đòi hỏi các nhà quản lý kinh tế phải xử lý một lượng lớn thông tin trong thời gian
nhanh nhất. Bên cạnh đó, việc nhanh chóng ứng dụng công nghệ mới vào sản xuất
đã làm giảm giá thành và giảm đáng kế chi phí đầu tư vào thiết bị. Ngoài ra, hạ tầng
CNTT cũng được được chú trọng đầu tư và phát triển. Vì vậy, ứng dụng tin học dần
trở nên phổ biến và gần như không thế thiếu dù là trong cuộc sống hay công việc.
Từ một cửa hàng nhỏ cho đến những viện nghiên cứu, các trung tâm lớn, đâu đâu
cũng có thể nhìn thấy ứng dụng của tin học trong đó, cho dù đó chỉ là một bộ máy
tính với một vài phần mềm ứng dụng, quản lý hay những cỗ siêu máy tính nhằm
giải quyết các bài toán phức tạp ở tầm quốc gia Như vậy có thể thấy rằng ứng
dụng tin học có một tầm quan trọng đặc biệt trong công tác quản lý, giúp các nhà
quản lý có đầy đủ các thông tin cần thiết để đưa ra các quyết định một cách nhanh
chóng nhằm đặt hiệu quả và hiệu suất cao trong công việc.
1.2. Giới thiệu về hệ thống quản lý bán hàng tại các cửa hàng kinh doanh máy
tính hiện nay
1.2.1. Cơ cấu tổ chức, quản lý của các cửa hàng kinh doanh máy tính hiện nay:
Các bộ phận của cửa hàng thường bao gồm :
+ Quản lý
+ Kinh doanh/marketing
+ Quản lý kho
+ Bán hàng
+ Kỹ thuật
+ Kế toán
SVTH : Phạm Quang Huy
5

Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
1.2.2. Công việc cụ thể từng bộ phận
+ Quản lý : thâu tóm quản lý toàn bộ hoạt động của cửa hàng, nhận báo
cáo thống kê định kỳ của các nhân viên trong từng bộ phận, kiểm tra các
hóa đơn để xuất nhập tiền, quản lý hàng hóa trong cửa hàng.
+ Kinh doan/Marketing : Khai thác nguồn hàng, tìm kiếm các nhà cung
cấp và khách hàng mới, tìm kiếm sản phẩm mới. Bộ phận này được quyền
xem báo cáo doanh số bán hàng, số lượng và chủng loại hàng
+ Kho : Nhập/xuất kho hàng hóa, gửi các báo cáo hàng còn tồn, hàng
hết tồn cho các bộ phận liên quan.
+ Bán hàng : có quyền tra cứu thông tin của sản phẩm trong cửa hàng,
nhập thông tin về khách hàng, lưu thông tin hóa đơn mua bán của khách
hàng, giao hàng cho khách.
+ Kỹ thuật : Thực hiện các công việc lắp ráp, cài đặt, bảo hành, bào trì
sản phẩm cho khách hàng.
+Kế toán: Lưu hóa đơn, phụ trách việc thu giữ, thống kê tổng hợp các loại giấy
tờ sổ máy tính của cửa hàng, theo dõi công nợ nhập hàng và bán hàng.
1.3. Phạm vi của đồ án
Trong đồ án này, em mong muốn xây dựng một chương trình phần mềm
quản lý bán hàng máy tính tại một số cửa hàng kinh doanh máy tính. Vì hiện tại các
cửa hàng này đang thực hiện công việc thủ công (làm hoàn toàn bằng tay, lưu trữ
trên giấy tờ sổ máy tính). Việc quản lý như vậy mất rất nhiều thời gian, công sức
mà hiệu quả không cao. Việc tra cứu thông tin, làm báo cáo nhiều khi rất khó khăn
vì thông tin không quản lý tập trung, không thống nhất
Qua khảo sát thực tế tại một số cửa hàng kinh doanh máy tính, em đã xây
dựng cho mình một phương án quản lý hoạt động kinh doanh máy tính qua một
chương trình phần mềm máy tính. Đây chỉ là một phần mềm đơn giản, dễ sử dụng.
Phần mềm này sẽ chuẩn hóa toàn bộ hoạt động kinh doan của cửa hàng , giúp các
bộ phận truy xuất thông tin lập báo cáo một cách nhanh chóng, chính xác và do đó
sẽ đặt hiệu quả cao hơn trong công việc.

SVTH : Phạm Quang Huy
6
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
1.4. Các kiến thức và công cụ có liên quan
Nhằm mục đích lựa chọn đúng môi trường và công cụ để phát triển đề tài, ta
cần tìm hiểu một số kiến thức và công cụ có liên quan tới việc xây dựng chương
trình.
Với mục đích lưu trữ tập trung và chia sẻ dữ liệu thì áp dung mô hình
“Client/Server” với một hệ quản trị cơ sở dữ liệu là phương án tốt nhất để giải quyết
bài toán trong đòi ắn này.
1.4.1. Mô hình Client/Server
Mô hình Client - Server là một kỹ thuật tính toán mới, trong đó Client là một
đối tượng cần được phục vụ, thông thường là các ứng dụng cần đến dữ liệu hay dịch
vụ từ chương trình khác và Server là đơn vị phục vụ những yêu cầu đó do nhiều
Client gởi đến. Mỗi khi cần được phục vụ, Client sẽ tạo một kết nối đến Server và
gởi yêu cầu nó cần. Sau khi việc phục vụ đã hoàn thành, Client sẽ ngắt kết nối và
trở về trạng thái như một chương trình bình thường. Việc ứng dụng mô hình Client -
Server sẽ làm giảm chi phí, đồng thời làm tăng tốc độ, điều này rất cần thiết trong
việc truy cập dữ liệu. Các hệ thống Client - Server được thiết kế nhằm tách biệt các
dịch vụ cơ sở dữ liệu ra khỏi máy client, làm cho tương tác giữa máy client và các
dịch vụ này có tính mở và mềm dẻo hơn. Các dịch vụ dữ liệu được thực hiện trên
máy chủ cấu hình mạnh đảm bảo quản lí tập trung, an ninh và chia sẻ dữ liệu. Các
ứng dụng client có thể chạy trên nhiều nền bằng cách sử dụng nhiều công cụ khác
nhau.
SVTH : Phạm Quang Huy
7
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
Hình 1.1 Mô hình Client/Server
Bất cứ một cơ chế Client/Server nào cũng đều bao gồm các thành phần sau
(mô tả trên hình 1.2)

- Server: Một tập hợp các thành phần dữ liệu và hỗ trợ các đối tượng được tổ
chức để đáp ứng nhanh các dịch vụ như tìm kiếm, tổ hợp, thu thập, sửa đổi và phân
tích dữ liệu. Cơ sở dữ liệu bao gồm các thiết bị lưu trữ vật lí và các dịch vụ phục vụ
cho các thiết bị lưu trữ này. Tất cả các thao tác truy cập dữ liệu đều thực hiện thông
qua Server, các dữ liệu vật lí không bao giờ được phép truy cập trực tiếp.
- Client: một chương trình ứng dụng do người dùng điều khiền hoặc chạy tự
động. Nó bao gồm tất cả các phần mềm giao tiếp với Server, hoặc yêu cầu dữ liệu
từ cơ sở dữ liệu hoặc gửi dữ liệu đến Server.
- Giao tiếp giữa Client và Server. Phần giao tiếp giữa client và server hầu
như phụ thuộc vào việc client và server được triển khai như thế nào. Phần giao tiếp
này bao gồm cả giao tiếp vật lí và logic.
Ưu điểm của mô hình Client/Server
- Cải thiện việc chia sẻ dữ liệu: Dữ liệu được thu thập là một phần của một
quá trình xử lí thông tin bình thường trong doanh nghiệp và được lưu trữ trên Server
để những người dùng được phép truy nhập. Việc sử dụng ngôn ngữ SQL để định
nghĩa và thao tác dữ liệu hỗ trợ cho việc truy cập mở của các phần mềm và vi xử lí
SVTH : Phạm Quang Huy
8
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
ở client. SQL cho phép người dùng truy nhập đến thông tin mình cần thông qua
View. Các dịch vụ mạng trong suốt đảm bảo cho việc truy cập đồng thời của nhiều
người dùng đến cùng một dữ liệu.
- Tích hợp các dịch vụ: Trong mô hình Client/Server dữ liệu, tất cả thông tin
mà người sử dụng được phép sử dụng đều có sẵn trên desktop mà không cần thay
đổi chế độ hoạt động hoặc phải truy cập vào một hệ điều hành khác để truy cập
thông tin Tất cả các thông tin và tiến trình được phép có thể được truy cập trực tiếp
từ giao diện với desktop. Người dùng có thể sử dụng các công cụ trên desktop như
emal, bảng tính, các trình bày đồ hoạ, chương trình soạn thảo văn bản để xử lí các
thông tin do các ứng dụng và cơ sở dữ liệu ở Server cung cấp qua mạng.
- Chia sẻ thông tin với nhiều môi trường nền (hệ điều hành, cơ sở dữ liệu,

môi trường truyền thông). Các ứng dụng có thể được tạo và thực hiện mà không cần
quan tâm đến môi trường nền hay đặc tính kĩ thuật của phần mềm. Người dùng vì
vậy có thể sử dụng các dịch vụ và truy cập trong suốt đến dịch vụ do cơ sở dữ liệu,
các phương tiện truyền thông và các ứng dụng ở Server.
- Data Interchangeability and Interoperability: SQL là ngôn ngữ định nghĩa
và truy cập dữ liệu theo chuẩn công nghiệp, ngôn ngữ này cho phép nhiều nhà cung
cấp phát triển các database engines để quản lí dữ liệu. Hầu hết tất cả các công cụ
phát triển client/server đều yêu cầu tham chiếu đến một server cơ sở dữ liệu back-
end được truy cập thông qua SQL. Các dịch vụ mạng cung cấp các kết nối trong
suốt giữa máy client và các server trong mạng nội bộ hay mạng diện rộng. Một số
sản phẩm về cơ sở dữ liệu cho phép người dùng hoặc ứng dụng định nghĩa một
View lấy thông tin từ nhiều môi trường nền khác nhau.
- Truy cập dữ liệu vật lí được nguỵ trạng (Masked Physical Data Access):
Khi người sử dụng dùng SQL để truy cập dữ liệu, người dùng có thể truy cập thông
tin từ các cơ sở dữ liệu trên mạng. Từ một máy PC hay server cục bộ hoặc server
trong mạng diện rộng, người sử dụng và nhà phát triển sử dụng cùng một yêu cầu
dữ liệu để truy cập dữ liệu. Một sự khác biết duy nhất có thể nhận thấy là sự giảm
chất lượng truy cập khi dải thông mạng không đáp ứng được. Cùng với một câu
lệnh SQL, dữ liệu có thể được truy cập thông qua bộ nhớ truy cập ngẫu nhiên động,
từ đĩa từ hoặc đĩa quang. Các bảng có thể được liên kết với nhau thành một view để
SVTH : Phạm Quang Huy
9
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
các chương trình ứng dụng xử lí mà không cần quan tâm đến cấu trúc lưu trữ vật lí
của các bảng này.
1.4.2. Hệ quản trị cơ sở dữ liệu
Để có thể cài đặt các phần mềm quản lý, ta phải cần đến hệ quản trị cơ sở dữ
liệu. Hệ quản trị cơ sở dữ liệu là phần mềm ứng dụng mà trong đó ta có thể tạo lập
và xử lý được các dữ liệu.
Hiện nay các hệ quản trị cơ sở dữ liệu được sử đụng rộng rãi là: SQL

SEVER, MYSQL, ORACLE, ACESS, POSTGRESQL…
1.4.2.1. Giới thiệu về các hệ quản trị cơ sở dữ liệu
a. MySQL
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và
được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì
MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt
động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.
Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có
truy cập CSDL trên internet. MySQL rất thích hợp cho các ứng dụng có truy cập
CSDL từ trên internet. MySQL được sử dụng miễn phí hoàn toàn .Nó có nhiều
phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành
dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI
Irix, Solaris, SunOS,…
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản Trị Cơ Sở Dữ liệu
quan hệ sử dụng ngôn ngữ truy vấn có cấu trúc (SQL).
MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nó
làm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,…
Các đối tượng của MYSQL
• Bảng - Table :
Trong cơ sở dữ liệu, bảng (Table) là thành phần chính của chúng. Do đó
bảng là đối tượng lưu trữ dữ liệu thực, khi cần giao tiếp với cơ sở dữ liệu khác,
SVTH : Phạm Quang Huy
10
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
bảng là đối tượng căn bản nhất trong bất kỳ loại cơ sở dữ liệu nào, chúng được
coi như một miền dữ liệu.
Bảng dùng để lưu trữ tất cả dữ liệu và được tổ chức thành nhiều hàng và
nhiều cột. Mỗi cột trong bảng có thể lưu một loại thông tin nhất định gọi là kiểu
dữ liệu, dữ liệu nhập vào có thể chấp nhận hoặc từ chối tùy thuộc vào nguyên
tắc ràng buộc dữ liệu hoặc dữ liệu tương thích do hệ thống hay người dùng định

nghĩa.
Khi định nghĩa cơ sở dữ liệu ta cần quan tâm đến các thông số sau:
• Key: Trường đó có khóa hay không.
• ID: Trường có thuộc tính Identity hay không.
• Column Name: Tên của trường.
• Data type: Loại dữ liệu cho trường tương ứng.
• Size: Kích thước trường dữ liệu.
• Allow null: Cho phép giá trị rỗng lưu trong trường hay không.
• Default: Giá trị mặc nhiên cho trường.
• Identity: Nếu bạn cần sử dụng một trường có giá trị tự động như
Autonumber trong access, trường này not null và Identity: yes (no).
• Identity seed: Nếu trường (cột) này là identity, cần số bắt đầu số 1
hoặc 2 …
• Chỉ mục - Indexs:
Index hay còn gọi là chỉ mục, đối tượng này chỉ tồn tại trong bảng hay khung
nhìn (view). Chỉ mục này có ảnh hưởng tới tốc độ truy cập số liệu, nhất là khi
cần tìm kiếm thông tin trên bảng, chỉ mục giúp tăng tốc độ cho việc tìm kiếm.
• Clustered: Ứng với mỗi chỉ mục này một bảng chỉ có một chỉ mục, và
số liệu được sắp xếp theo trang.
• Non-clustered: Ứng với chỉ mục này một bảng có thể có nhiều chỉ
mục và dữ liệu được sắp xếp theo trường dữ liệu mà bạn chỏ tới.
• Bẫy lỗi - Triggers:
SVTH : Phạm Quang Huy
11
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
Nếu đối tượng chỉ tồn tại trong bảng, cụ thể là một đoạn mã, và tự động thực
thi khi có một hành động nào đó xảy ra đối với dữ liệu trong bảng như: Insert,
Update, Delete.
Trigger có thể sử dụng để bẫy rất nhiều tình huống như copy dữ liệu, xóa dữ
liệu, cập nhập dữ liệu, kiểm tra dữ liệu theo tiêu chuẩn nào đó.

• Ràng buộc - Constaints:
Là một đối tượng, nó là một phần nhỏ trong bảng, chúng ràng buộc dữ liệu
trong bảng hoặc các bảng khác phải tuân theo một quy tắc nào đó.
• Khung nhìn (View):
Là khung nhìn hay một bảng ảo của bảng. Cũng giống như bảng nhưng View
không thể chứa dữ liệu, bản thân View có thể tạo thêm trường mới dựa vào
những phép toán, biểu thức của MY SQL. Bên cạnh đó View có thể kết nối
nhiều bảng lại với nhau theo quan hệ nhất định cùng với những tiêu chuẩn,
nhằm tạo ra một bảng theo nhu cầu của người dùng.
View cho phép bạn chia ngang hay dọc thông tin từ một hay nhiều bảng
trong cơ sở dữ liệu, sử dụng View như là một đối tượng trong MY SQL, khi cần
thiết sử dụng đến View, kết quả View trả về bằng việc truy vấn dữ liệu theo yêu
cầu người dùng.
Mục đích sử dụng View:
• Hạn chế tính phức tạp của dữ liệu đến người dùng.
• Kết nối dữ liệu từ nhiều bảng lại với nhau.
• Sử dụng tài nguyên Server để thực hiện việc truy vấn.
• Tạo ra một bảng ảo có dữ liệu như yêu cầu.
• Kết hợp một số hàm và phương thức tạo ra các cột mới.
• Thủ tục nội (stored Procedure):
Thủ tục nội hay còn gọi là Spocs, tiếp tục phát triển như một phần lập trình
SQL trên cơ sở dữ liệu. Store Procedure cho phép khai báo biến, nhận tham số
SVTH : Phạm Quang Huy
12
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
cúng như thực thi các phát biểu có điều kiện. Store Procedure có các ưu điểm
sau:
• Kế thừa tất cả các phát triển của SQL, và là một đối tượng xử lý số
liệu hiệu quả nhất khi dùng MY SQL.
• Tiết kiệm thời gian thực thi trên dữ liệu.

• Có thể gọi những Stored Procedure theo cách gọi của thủ tục hay hàm
trong các ngôn ngữ lập trình truyền thống, đồng thời sử dụng lại khi
có yêu cầu.
b. Microsoft Access
Microsoft Access là một trong bốn phần mềm ứng dụng của bộ Microsoft
Office. Nó là một hệ quản trị Cơ Sở Dữ Liệu (Database Management System) dùng
để tạo, xử lý các Cơ Sở Dữ Liệu. Phần mềm này đã được giới thiệu ở Việt Nam từ
vài năm gần đây nhưng chưa được mở rộng khắp so với các phần mềm khác. Từ
trước đến nay ở Việt Nam nói đến quản lý Cơ Sở Dữ Liệu là người ta thường nghĩ
ngay đến FoxPro, FoxBase. Dùng FoxPro trong quản lý hầu như ta có thể yên tâm
vì FoxPro có thể làm được mọi việc. Tuy nhiên nếu đi sâu tìm hiểu Access có thể
thấy rằng phần mềm này thể hiện nhiều đặc tính ưu việt hơn FoxPro, nổi bật hơn cả
là tính đơn giản và hiệu quả. Thật vậy, Access có thể đáp ứng hầu hết các nhu cầu
về quản trị Cơ Sở Dữ Liệu nhưng vẫn giữ tính thân thiện và dễ sử dụng cả cho
người lập trình lẫn cho người sử dụng. Các khái niệm trong lý thuyết Cơ Sở Dữ
Liệu được thể hiện khá đầy đủ trong Access. Nó là 1 hệ thống có tính hướng đối
tượng và có thể dùng trên hệ thống mạng để chia xẻ với nhiều người sử dụng Cơ Sở
Dữ Liệu. Đồng thời Access dễ dàng quản lý, thể hiện và chia xẻ thông tin trong các
công việc quản lý dữ liệu hàng ngày.
Microsoft Access là một hệ quản trị cơ sở dữ liệu 32bit dùng để tạo các ứng
dụng cơ sở dữ liệu dùng với các máy Desktop và với mô hình client/server chạy
dưới Windows 95, Windows NT. Những phiên bản Access trong những năm gần
đây có thêm nhiều tính năng đa dạng liên quan đến Internet giúp ta tạo các tư liệu
HTML mà WWW sử dụng. Các JetEngine cơ sở dữ liệu được nâng cấp sẽ tăng tốc
các bộ hỏi đối với các mô hình Client/Server có ODBC direct.
SVTH : Phạm Quang Huy
13
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
Access có một cấu trúc dữ liệu độc đáo có thể phối hợp với mọi bảng dữ liệu
có liên quan và các chỉ mục, biểu mẫu, báo biểu, macro và mã VBA trong chỉ một

tập tin cơ sở dữ liệu mdb. Ngoài ra Access còn cung cấp một dạng tập tin mới có
phần mở rộng là mde, giúp người lập trình phân phối các ứng dụng Access mà
không cần gộp mã nguồn VBA ban đầu.
c. Oracle
Oracle bao gồm một tập hợp hoàn thiện các sản phẩm xây dựng ứng dụng và
người dùng cuối được trang bị các giải pháp kỹ thuật thông tin hoàn hảo. Các ứng
dụng Oracle tương thích với hầu hết các hệ điều hành từ các máy tính cá nhân đến
các hệ thống xử lý song song lớn.
Oracle cung cấp một hệ quản trị cơ sở dữ liệu (Database Management
System - DBMS) uyển chuyển: Oracle Server để lưu giữ và quản lý các thông tin
dùng trong các ứng dụng. Phiên bản Oracle 8i quản lý cơ sở dữ liệu với tất cả các
ưu điểm của cấu trúc CSDL quan hệ cộng thêm khả năng lưu giữ và thực thi các đối
tượng CSDL như các procedure và các trigger.
Oracle Server là một hệ quản trị CSDL điều khiển:
-Lưu giữ dữ liệu trên các vùng dữ liệu đã thiết kế.
-Truy xuất dữ liệu cho các ứng dụng, dùng các kỹ thuật tương đối tối ưu.
-Bảo mật dữ liệu, cấp quyền khác nhau cho các user.
-Liên kết và toàn vẹn dữ liệu khi CSDL được phân bố trên mạng.
Ngoài các chức năng chuẩn cung cấp các tiện ích CSDL, Oracle Server còn
có thêm một số chức năng sau:
-Procedural Option
-Distributed Option
-Parallel Server Option
-Trusted Oracle.
Các sản phẩm của Oracle bao gồm:
-Oracle TextRetrieval
-Pro* ORACLE
-Oracle Card
-Oracle CASE
-SQL * Plus

SVTH : Phạm Quang Huy
14
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
Oracle cho phép định nghĩa các ràng buộc toàn vẹn cho các cột trong table
hay giữa các table với nhau để buộc chúng tuân theo một quy luật nào đó nhằm mục
đích: Kiểm tra ràng buộc toàn vẹn dữ liệu khi thêm vào, cập nhật hay xóa dữ liệu;
ngăn cản việc xóa 1 table khi có sự phụ thuộc của table này vào các table khác.
Oracle có các kiểu ràng buộc sau:
-NOT NULL: cột không được rỗng.
-UNIQUE: đánh dấu một cột hoặc một tập các cột như một khóa duy nhất,
không thể có 2 dòng trong table chứa cùng giá trị cho khóa này.
-PRIMARY KEY: tương tự như khóa đơn nhất, một khóa chính bắt buộc sự
duy nhất của một cột hay một tổ hợp các cột.
-FOREIGN KEY: Khóa ngoại cung cấp các luật ràng buộc tham khảo toàn
vẹn không những bên trong 1 table mà còn giữa các table.
-CHECK: ràng buộc này định nghĩa một điều kiện mà mỗi dòng phải thỏa
trong 1 table khi đưa 1 giá trị vào 1 cột đã được định nghĩa.
Từ điển dữ liệu là một trong những phần quan trọng nhất của Oracle DBMS.
Từ điển dữ liệu bao gồm một tập hợp các table và view cung cấp các hướng dẫn
tham khảo chỉ đọc về CSDL. Từ điển dữ liệu chứa đựng:
-Tên username của người sử dụng Oracle
-Các quyền và tập quyền được cấp.
-Tên của các đối tượng CSDL (table, view, index, synonym,…)
-Các ràng buộc được cấp cho table.
-Các thông tin cập nhật.
Từ điển dữ liệu được tạo ra khi ta tạo 1 CSDL. Từ đó bất cứ lúc nào CSDL
đang hoạt động thì từ điển dữ liệu cũng luôn được Oracle RDBMS cập nhật.
Từ điển dữ liệu là một tham khảo đến toàn bộ CSDL người dùng. Đây là một
tài nguyên có giá trị đối với người dùng cuối, người thiết kế ứng dụng và người
quản trị CSDL. Các hoạt động của RDBMS cũng dựa trên từ điển dữ liệu để lưu và

kiểm tra các thông tin về CSDL.
Oracle cũng có cơ chế backup và restore dữ liệu ra các thiết bị lưu trữ hoặc
sử dụng các redolog file để phục hồi lại dữ liệu tại thời điểm gần đây nhất trước khi
dữ liệu bị mất mát.
SVTH : Phạm Quang Huy
15
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
Oracle mặc dù là hệ quản trị cơ sở dữ liệu mạnh vào loại nhất hiện nay
nhưng giá thành để đào tạo và cài đặt chương trình rất tốn kém, vì vậy chỉ phù hợp
dùng cho các dự án và các cửa hàng lớn.
d. SQL Server
SQL Server là sản phẩm Database Engine của Microsoft. SQL Server lần đầu
tiên được giới thiệu vào năm 1990 trên nền Microsoft OS/2 cùng với Sybase. Sản
phẩm này bắt nguồn từ Sybase SQL Server chạy trên nền Unix của Microsoft.
Microsoft SQL Server 4.2 ra đời khi trên thị trường xuất hiện hệ điều hành
Windows NT. Sau đó tiếp tục là các phiên bản 6.0 và 6.5.
SQL Server 6.5 đã có những cải thiện đáng kể về các thao tác liên quan đến
transaction, độ tin cậy và qui mô của hệ thống và đã trở thành một trong những sản
phẩm được sử dụng rộng rãi nhất cho các hệ thống chạy trên nền Windows NT.
SQL Server 7.0 là một kiến trúc database engine tiên tiến, đã giải quyết được
những yêu cầu cần thiết của một ứng dụng cơ sở dữ liệu. SQL Server cho phép các
nhà phát triển chỉ cần viết mã một lần cho các ứng dụng chạy trên các hệ điều hành
từ Windows 98 cho đến Windows NT Server. Việc kiểm soát tính ổn định và tương
tranh là điều bắt buộc đối với các ứng dụng xí nghiệp. Với SQL Server 7.0 điều này
được thực hiện với độ tin cậy cao trên mọi hệ điều hành của Windows. SQL Server
sử dụng khái niệm transaction và transaction logging để đảm bảo tính toàn vẹn và
khả năng khôi phục lại các dữ liệu lưư trong các cơ sở dữ liệu. Một transaction là
một đơn vị của công việc, nó được bắt đầu bằng câu lệnh BEGIN TRANSACTION
và kết thúc bằng câu lệnh COMMIT TRANSACTION. Sau khi COMMIT, mọi dữ
liệu ghi tạm thời trong RAM đều được cập nhật vào cơ sở dữ liệu. Trong quá trình

làm việc khi dữ liệu bị hỏng hoặc mất mát, SQL Server cho phép sử dụng các file
log để phục hồi lại dữ liệu tại lần COMMIT gần nhất. Để kiểm soát tương tranh
trong quá trình làm việc, SQL Server cũng sử dụng các cơ chế khoá (lock). SQL
Server hỗ trợ nhiều loại khoá khác nhau để điều khiển việc truy nhập đến bất kì
phần dữ liệu nào từ một dòng trong cơ sở dữ liệu đến một bảng trong cơ sở dữ liệu
đó. Ngoài ra, SQL Server còn hỗ trợ sao lưu trực tuyến cho phép tạo ra một bản sao
lưu dữ liệu đầy đủ của một cơ sở dữ liệu active và các file transaction log vẫn được
tạo trong khi người sử dụng đang truy vấn và cập nhật dữ liệu.
SVTH : Phạm Quang Huy
16
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
1.4.2.2. Giới thiệu chung về ngôn ngữ truy nhập cơ sở dữ liệu SQL
(Structered Query Language )
a. SQL là ngôn ngữ cơ sở dữ liệu quan hệ
SQL, viết tắt của Structured Query Language (ngôn ngữ hỏi có cấu
trúc), là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu đuợc lưu trữ
trong các cơ sở dữ liệu. SQL là một hệ thống ngôn ngữ bao gồm tập các câu
lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ.
Tên gọi ngôn ngữ hỏi có cấu trúc phần nào làm chúng ta liên tưởng
đến một công cụ (ngôn ngữ) dùng để truy xuất dữ liệu trong các cơ sở dữ liệu.
Thực sự mà nói, khả năng của SQL vượt xa so với một công cụ truy xuất dữ
liệu, mặc dù đây là mục đích ban đầu khi SQL được xây dựng nên và truy xuất
dữ liệu vẫn còn là một trong những chức năng quan trọng của nó. SQL được sử
dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung
cấp cho người dùng bao gồm:

Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ
liệu, các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các
thành phần dữ liệu.


Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng
thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong
các cơ sở dữ liệu.

Điều khiển truy cập: SQL có thể được sử dụng để cấp phát và kiểm soát
các thao tác của người sử dụng trên dữ liệu, đảm bảo sự an toàn cho cơ sở
dữ liệu

Đảm bảo toàn vẹn dữ liệu: SQL định nghĩa các ràng buộc toàn vẹn
trong cơ sở dữ liệu nhờ đó đảm bảo tính hợp lệ và chính xác của dữ liệu trước các
thao tác cập nhật cũng như các lỗi của hệ thống.
Như vậy, có thể nói rằng SQL là một ngôn ngữ hoàn thiện được sử dụng
trong các hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trong
các hệ quản trị cơ sở dữ liệu. Mặc dù SQL không phải là một ngôn ngữ lập trình
như C, C++, Java, song các câu lệnh mà SQL cung cấp có thể được nhúng
vào trong các ngôn ngữ lập trình nhằm xây dựng các ứng dụng tương tác với cơ
sở dữ liệu.
SVTH : Phạm Quang Huy
17
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
Khác với các ngôn ngữ lập trình quen thuộc như C, C++, Java, SQL là
ngôn ngữ có tính khai báo. Với SQL, người dùng chỉ cần mô tả các yêu cầu cần
phải thực hiện trên cơ sở dữ liệu mà không cần phải chỉ ra cách thức thực hiện
các yêu cầu như thế nào. Chính vì vậy, SQL là ngôn ngữ dễ tiếp cận và dễ sử
dụng.
b. Vai trò của SQL
Bản thân SQL không phải là một hệ quản trị cơ sở dữ liệu, nó không thể tồn
tại độc lập. SQL thực sự là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiện
trong các hệ quản trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp
giữa người sử dụng và hệ quản trị cơ sở dữ liệu.

Trong hầu hết các hệ quản trị cơ sở dữ liệu quan hệ, SQL có những vai trò như:

SQL là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ
dàng thông qua các trình tiện ích để gởi các yêu cầu dưới dạng các câu lệnh SQL
đến cơ sở dữ liệu và nhận kết quả trả về từ cơ sở dữ liệu

SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể
nhúng các câu lệnh SQL vào trong các ngôn ngữ lập trình để xây dựng nên
các chương trình ứng dụng giao tiếp với cơ sở dữ liệu

SQL là ngôn ngữ quản trị cơ sở dữ liệu: Thông qua SQL, người quản
trị cơ sở dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu
trữ dữ liệu, điều khiển truy cập cơ sở dữ liệu,

SQL là ngôn ngữ cho các hệ thống khách/chủ (client/server): Trong
các hệ thống cơ sở dữ liệu khách/chủ, SQL được sử dụng như là công cụ để giao
tiếp giữa các trình ứng dụng phía máy khách với máy chủ cơ sở dữ liệu.

SQL là ngôn ngữ truy cập dữ liệu trên Internet: Cho đến nay, hầu hết
các máy chủ Web cũng như các máy chủ trên Internet sử dụng SQL với vai trò là
ngôn ngữ để tương tác với dữ liệu trong các cơ sở dữ liệu.

SQL là ngôn ngữ cơ sở dữ liệu phân tán: Đối với các hệ quản trị cơ sở
dữ liệu phân tán, mỗi một hệ thống sử dụng SQL để giao tiếp với các hệ thống
khác trên mạng, gởi và nhận các yêu cầu truy xuất dữ liệu với nhau.
SVTH : Phạm Quang Huy
18
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính

SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu: Trong

một hệ thống mạng máy tính với nhiều hệ quản trị cơ sở dữ liệu khác nhau, SQL
thường được sử dụng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị cơ
sở dữ liệu.
c. Tổng quan về cơ sở dữ liệu quan hệ
 Mô hình dữ liệu quan hệ
Mô hình dữ liệu quan hệ được Codd đề xuất năm 1970 và đến nay trở thành
mô hình được sử dụng phổ biến trong các hệ quản trị cơ sở dữ liệu thương mại.
Nói một cách đơn giản, một cơ sở dữ liệu quan hệ là một cơ sở dữ liệu trong đó tất
cả dữ liệu được tổ chức trong các bảng có mối quan hệ với nhau. Mỗi một
bảng bao gồm các dòng và các cột: mỗi một dòng được gọi là một bản ghi (bộ) và
mỗi một cột là một trường (thuộc tính).
Hình 1.2: Các bảng trong một cơ sở dữ liệu
SVTH : Phạm Quang Huy
20
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
 Bảng (Table)
Như đã nói ở trên, trong cơ sở dữ liệu quan hệ, bảng là đối tượng được sử
dụng để tổ chức và lưu trữ dữ liệu. Một cơ sở dữ liệu bao gồm nhiều bảng và mỗi
bảng được xác định duy nhất bởi tên bảng. Một bảng bao gồm một tập các dòng
và các cột: mỗi một dòng trong bảng biểu diễn cho một thực thể (trong hình 1.1,
mỗi một dòng trong bảng SINHVIEN tương ứng với một sinh viên); và mỗi một
cột biểu diễn cho một tính chất của thực thể (chẳng hạn cột NGAYSINH trong
bảng SINHVIEN biểu diễn cho ngày sinh của các sinh viên được lưu trữ trong
bảng).
Như vậy, liên quan đến mỗi một bảng bao gồm các yếu tố sau:

Tên của bảng: được sử dụng để xác định duy nhất mỗi bảng trong cơ sở
dữ
liệu.


Cấu trúc của bảng: Tập các cột trong bảng. Mỗi một cột trong bảng
được xác định bởi một tên cột và phải có một kiểu dữ liệu nào đó (chẳng
hạn cột NGAYSINH trong bảng SINHVIEN ở hình 1.1 có kiểu là
DATETIME). Kiểu dữ liệu của mỗi cột qui định giá trị dữ liệu có thể
được chấp nhận trên cột đó.

Dữ liệu của bảng: Tập các dòng (bản ghi) hiện có trong bảng.
 Khoá của bảng
Trong một cơ sở dữ liệu được thiết kế tốt, mỗi một bảng phải có một hoặc
một tập các cột mà giá trị dữ liệu của nó xác định duy nhất một dòng trong
một tập các dòng của bảng. Tập một hoặc nhiều cột có tính chất này được gọi là
khoá của bảng.
Việc chọn khoá của bảng có vai trò quan trọng trong việc thiết kế và cài đặt
các cơ sở dữ liệu quan hệ. Các dòng dữ liệu trong một bảng phải có giá trị khác
nhau trên khoá. Bảng MONHOC trong hình dưới đây có khoá là cột
MAMONHOC
SVTH : Phạm Quang Huy
21
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
Hình 1.3: Bảng MONHOC với khoá chính là MAMONHOC
Một bảng có thể có nhiều tập các cột khác nhau có tính chất của khóa( tức là giá
trị của nó xác định duy nhất một dòng dữ liệu trong bảng). Trong trường hợp này,
khóa được chọn cho bảng được gọi là khóa chính (primary key) và những khóa còn lại
được gọi là khóa phụ hay khóa dự tuyển( candite key/ uinque key)
 Mối quan hệ và khóa ngoài
Các bảng trong một CSDL không tồn tại độc lập mà có mối quan hệ mật thiết với
nhau về mặt dữ liệu. Mối quan hệ này được thể hiện thông qua ràng buộc giá trị dữ liệu
xuất hiện ở bảng này phải có xuất hiện trong một bảng khác. Mối quan hệ giữa các bảng
trong CSDL nhằm đảm bảo được tính đúng đắn và hợp lệ của dữ liệu trong CSDL.
Trong hình 1.3 hai bảng lớp và khoa có mối quan hệ với nhau. Mối quan hệ này

đòi hỏi giá trị cột MAKHOA của một dòng trong bảng lớp phải được xác định từ cột
MAKHOA và của bảng KHOA.
SVTH : Phạm Quang Huy
22
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính

Hình 1.4 Mối quan hệ hai bảng Lop và Khoa trong CSDL
Mối quan hệ giữa các bảng trong 1 CSDL thể hiện đúng mối quan hệ giữa các
thực thể. Khái niệm khoá ngoài (Foreign Key) trong cơ sở dữ liệu quan hệ được sử
dụng để biểu diễn mối quan hệ giữa các bảng dữ liệu. Một hay một tập các cột
trong một bảng mà giá trị của nó được xác định từ khóa chính của một bảng khác
được gọi là khoá ngoài. Trong hình 1.3, cột MAKHOA của bảng LOP được gọi là
khoá ngoài của bảng này, khoá ngoài này tham chiếu đến khoá chính của bảng KHOA
là cột MAKHOA.
d. Sơ lược về SQL
 Câu lệnh SQL
SQL chuẩn bao gồm khoảng 40 câu lệnh. Trong các hệ quản trị cơ sở dữ
liệu khác nhau, mặc dù các câu lệnh đều có cùng dạng và cùng mục đích sử dụng
song mỗi một hệ quản trị cơ sở dữ liệu có thể có một số thay đổi nào đó. Điều
này đôi khi dẫn đến cú pháp chi tiết của các câu lệnh có thể sẽ khác nhau trong các
hệ quản trị cơ cơ sở dữ liệu khác nhau.
SELECT : truy xuất dữ liệu
INSERT : bổ sung dữ liệu
UPDATE: cập nhật dữ liệu
DELETE : xóa dữ liệu
TRUNCATE : xóa toàn bộ dữ liệu trong bảng
CREATE TABLE : tạo bảng
DROP TABLE : xóa bảng
ALTER TABLE : sửa đổi bảng
CREATE VIEW : tạo khung nhìn

ALTER VIEW : sửa đổi khung nhìn
DROP VIEW : xóa khung nhìn
CREAT INDEX : tạo chỉ mục
DROP INDEX : xóa chỉ mục
CREAT FUNCTION: tạo hàm
ALTER FUNCTION : sửa đổi hàm
SVTH : Phạm Quang Huy
23
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
DROP FUNCTION : xóa hàm
CREAT TRIGGER : tạo trigger
ALTER TRIGGER : sửa đổi trigger
DROP TRIGGER : xóa trigger
GRANT : cấp phát quyền cho người sử dụng
REVOKE : thu hồi quyền từ người sử dụng
 Quy tắc sử dụng tên trong SQL
Các đối tượng trong cơ sở dữ liệu dựa trên SQL được xác định thông qua
tên của đối tượng. Tên của các đối tượng là duy nhất trong mỗi cơ sở dữ liệu. Tên
được sử dụng nhiều nhất trong các truy vấn SQL và được xem là nền tảng trong cơ
sở dữ liệu quan hệ là tên bảng và tên cột.
Trong các cơ sở dữ liệu lớn với nhiều người sử dụng, khi ta chỉ định tên của
một bảng nào đó trong câu lệnh SQL, hệ quản trị cơ sở dữ liệu hiểu đó là tên của
bảng do ta sở hữu (tức là bảng do ta tạo ra). Thông thường, trong các hệ quản trị cơ
sở dữ liệu này cho phép những người dùng khác nhau tạo ra những bảng trùng tên
với nhau mà không gây ra xung đột về tên. Nếu trong một câu lệnh SQL ta cần chỉ
đến một bảng do một người dùng khác sở hữu (hiển nhiên là phải được phép) thì
tên của bảng phải được viết sau tên của người sở hữu và phân cách với tên người
sở hữu bởi dấu chấm:
tên_ng
ườ

i_s

_h

u.tên_b

ng
Một số đối tượng cơ sở dữ liệu khác (như khung nhìn, thủ tục, hàm), việc sử
dụng tên cũng tương tự như đối với bảng.
Ta có thể sử dụng tên cột một cách bình thường trong các câu lệnh SQL bằng
cảch chỉ cần chỉ định tên của cột trong bảng. Tuy nhiên, nếu trong câu lệnh có
liên quan đến hai cột trở lên có cùng tên trong các bảng khác nhau thì bắt buộc
phải chỉ định thêm tên bảng trước tên cột; tên bảng và tên cột được phân cách nhau
bởi dấu chấm.
Ví dụ: Ví dụ dưới đây minh hoạ cho ta thấy việc sử dụng tên bảng và tên cột trong
câu lệnh SQL
SELECT masv,hodem,ten,sinhvien.malop,tenlop
SVTH : Phạm Quang Huy
24
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
FROM dbo.sinhvien,dbo.lop
WHERE sinhvien.malop = lop.malop
 Kiểu dữ liệu
Chuẩn ANSI/ISO SQL cung cấp các kiểu dữ liệu khác nhau để sử dụng trong
các cơ sở dữ liệu dựa trên SQL và trong ngôn ngữ SQL. Dựa trên cơ sở các kiểu dữ
liệu do chuẩn ANSI/ISO SQL cung cấp, các hệ quản trị cơ sở dữ liệu thương mại
hiện nay có thể sử dụng các dạng dữ liệu khác nhau trong sản phẩm của mình. Dưới
đây liệt kê một số kiểu dữ liệu thông dụng được sử dụng trong SQL.
CHAR (n) Kiểu chuỗi với độ dài cố định
NCHAR (n) Kiếu chuỗi với độ dài cố định hỗ trợ UNICODE

VARCHAR (n) Kiểu chuỗi với độ dài chính xác
NVARCHAR (n) Kiểu chuỗi với độ dài chính xác hỗ trợ UNICODE
INTEGER Số nguyên có giá trị từ -2
31
đến 2
31
- 1
INT Như kiểu Integer
TINYTINT Số nguyên có giá trị từ 0 đến 255.
SMALLINT Số nguyên có giá trị từ -2
15
đến
2
15
– 1
BIGINT Số nguyên có giá trị từ -2
63
đến 2
63
-1
NUMERIC (p,s) Kiểu số với độ chính xác cố định.
DECIMAL (p,s) Tương tự kiểu Numeric
FLOAT Số thực có giá trị từ -1.79E+308 đến 1.79E+308
REAL Số thực có giá trị từ -3.40E + 38 đến 3.40E + 38
MONEY Kiểu tiền tệ
BIT Kiểu bit (có giá trị 0 hoặc 1)
DATETIME Kiểu ngày giờ (chính xác đến phần trăm của giây)
SMALLDATETIME Kiểu ngày giờ (chính xác đến phút)
TIMESTAMP
BINARY Dữ liệu nhị phân với độ dài cố định (tối đa 8000 bytes)

SVTH : Phạm Quang Huy
25
Đồ án tốt nghiệp : Xây dựng phần mềm quản lý và bán hàng cửa hàng máy tính
VARBINARY Dữ liệu nhị phân với độ dài chính xác (tối đa 8000 bytes)
IMAGE Dữ liệu nhị phân với độ dài chính xác (tối đa
2,147,483,647 bytes)
 Giá trị Null
Một cơ sở dữ liệu là sự phản ánh của một hệ thống trong thế giới thực,
do đó các giá trị dữ liệu tồn tại trong cơ sở dữ liệu có thể không xác định được.
Một giá trị không xác định được xuất hiện trong cơ sở dữ liệu có thể do một số
nguyên nhân sau:

Giá trị đó có tồn tại nhưng không biết.

Không xác định được giá trị đó có tồn tại hay không.

Tại một thời điểm nào đó giá trị chưa có nhưng rồi có thể sẽ có.

Giá trị bị lỗi do tính toán (tràn số, chia cho không, )
Những giá trị không xác định được biểu diễn trong cơ sở dữ liệu quan hệ
bởi các giá trị NULL. Đây là giá trị đặc biệt và không nên nhầm lẫn với chuỗi
rỗng (đối với dữ liệu kiểu chuỗi) hay giá trị không (đối với giá trị kiểu số). Giá trị
NULL đóng một vai trò quan trọng trong các cơ sở dữ liệu và hầu hết các hệ quản
trị cơ sở dữ liệu quan hệ hiện nay đều hỗ trợ việc sử dụng giá trị này.
1.4.3. Tìm hiểu và lựa chọn công cụ phát triển chương trình
1.4.3.1. Giới thiệu về các công cụ lập trình trong Windows
a. Visual Basic
Visual Basic là một trong những công cụ lập trình phổ biến hỗ trợ việc tạo giao diện
người dùng và tương tác với cơ sở dữ liệu. Visual Basic cho phép thiết kế và viết một
chương trình ứng dụng chạy trong Windows mà không cần tốn nhiều thời gian và công

sức. Visual Basic đang trở nên là một trong những công cụ lập trình thoải mái và cơ
động nhất trên Windows. Visual Basic cung cấp cho người lập trình một tập các công
cụ hoàn chỉnh để phát triển ứng dụng. Visual Basic đưa ra phương pháp lập trình mới,
nâng cao tốc độ lập trình so với các phương pháp truyền thống cũ, đồng thời cung cấp
sẵn các công cụ trợ giúp lập trình dễ dùng. Visual Basic có thể kết hợp với C++ tạo ra
đối tượng VBX mới và có thể dùng trong cả môi trường Visual Basic cũng như C++.
SVTH : Phạm Quang Huy
26

×