1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

72 741 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 72
Dung lượng 882 KB

Nội dung

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.

Trang 1

MỤC LỤC

LỜI CẢM ƠN 4

LỜI NÓI ĐẦU 5

CHƯƠNG 1: TỔNG QUAN 6

1.1 Tầm quan trọng của ứng dụng tin học trong quản lý 6

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 6

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

1.2.2 Công việc cụ thể từng bộ phận 7

1.3 Phạm vi của đồ án 7

1.4 Các kiến thức và công cụ có liên quan 8

1.4.1 Mô hình Client/Server 8

1.4.2 Hệ quản trị cơ sở dữ liệu 11

1.4.3 Tìm hiểu và lựa chọn công cụ phát triển chương trình 26

CHƯƠNG II: PHÂN TÍCH HỆ THỐNG 36

2.1 Khảo sát quá trình kinh doanh của các cửa hàng kinh doanh máy tính 36

2.2 Nhược điểm của các khâu trong quá trình kinh doanh 38

2.3 Sơ đồ phân cấp chức năng hệ thống 39

2.4 Biểu đồ luồng dữ liệu của hệ thống 41

2.4.1.Các ký hiệu sử dụng trong biểu đồ 41

2.4.2 Biểu đồ luồng dữ liệu mức khung cảnh (mức 0) 41

2.4.3 Biểu đồ luồng dữ liệu mức đỉnh (mức 1) 42

2.4.4 Phân rã chức năng 1 Cập nhật thông tin (mức 2) 43

2.4.5 Phân rã chức năng 2 Quản lý kho (mức 2) 44

2.4.6 Phân rã chức năng 3 Tra cứu, thống kê (mức 2) 44

2.4.7 Phân tích chức năng 45

2.5 Phân tích dữ liệu của hệ thống 48

2.5.1 Mô hình thực thể / liên kết 48

2.5.2 Luồng dữ liệu 49

2.5.3 Kho dữ liệu 49

CHƯƠNG III: THIẾT KẾ HỆ THỐNG 50

Trang 2

3.1 Chuẩn hoá dữ liệu 50

3.1.1 Khái niệm về chuẩn hoá 50

3.1.2 Chuẩn hoá dữ liệu 50

3.2 THIẾT KẾ GIAO DIỆN CHƯƠNG TRÌNH QUẢN LÝ BÁN HÀNG 57

3.2.1.Thiết kế hệ thống Menu của chương trình 57

3.2.2 Các chức năng của từng Menu 58

CHƯƠNG 4: ĐÁNH GIÁ KẾT QUẢ VÀ KẾT LUẬN 71

4.1 Đánh giá kết quả 71

4.2 Hướng phát triển 72

4.3 Kết Luận 72

TÀI LIỆU THAM KHẢO 74

Trang 3

DANH MỤC BẢNG, HÌNH

Hình 1.1 Mô hình Client/Server 9

Hình 1.3: Bảng MONHOC với khoá chính là MAMONHOC 22

Hình 1.5: Hình Data Control 33

Hình 2.1 Biểu đồ phân cấp chức năng 40

Hình 2.2: Biểu đồ luồng dữ liệu mức khung cảnh 41

Hình 2.3 : Biểu đồ luồng dữ liệu mức đỉnh 42

Hình 2.4: Biểu đồ luồng dữ liệu quản lý Cập nhật thông tin 43

Hình 2.5: Biểu đồ luồng dữ liệu quản lý kho 44

Hình 2.6: Biểu đồ luồng dữ liệu Tra cứu, thống kê 45

Trang 4

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ôngNghệ 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ó đượcnhữ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êncạ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àngcử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ốtnhấ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 đầutiê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ấtmong 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

Trang 5

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ọilĩ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àmviệ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 thaotá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, nhanhchó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ầuhọ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ìmhiể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àngcử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ứcnê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:

Trang 6

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ếnvượ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 giannhanh 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ầngCNTT cũng được được chú trọng đầu tư và phát triển Vì vậy, ứng dụng tin học dầntrở 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 đâucũng có thể nhìn thấy ứng dụng của tin học trong đó, cho dù đó chỉ là một bộ máytí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ằmgiả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 ứngdụ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 nhanhchó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 :

Trang 7

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à cungcấ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ềmquả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áccử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âydựng cho mình một phương án quản lý hoạt động kinh doanh máy tính qua mộtchươ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

Trang 8

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, tacầ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ươngtrì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ếtbài toán trong đòi ắn này

Trang 9

- 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ầunhư phụ thuộc vào việc client và server được triển khai như thế nào Phần giao tiếpnà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ộtquá 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 để địnhnghĩ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í

Trang 10

ở client SQL cho phép người dùng truy nhập đến thông tin mình cần thông quaView 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ềungườ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ậpthô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ácthô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ầnquan 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à cungcấ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 trongsuố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ộtView 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ôngtin 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 servertrong 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ảmchấ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âulệ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 để

Trang 11

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

MySQL là một trong những ví dụ rất cơ bản về Hệ Quản Trị Cơ Sở Dữ liệuquan 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,

Trang 12

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 đượccoi 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êntắ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 địnhnghĩ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ố 1hoặ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 khungnhìn (view) Chỉ mục này có ảnh hưởng tới tốc độ truy cập số liệu, nhất là khicầ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:

Trang 13

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ựcthi 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 đó

View cho phép bạn chia ngang hay dọc thông tin từ một hay nhiều bảngtrong cơ sở dữ liệu, sử dụng View như là một đối tượng trong MY SQL, khi cầnthiết sử dụng đến View, kết quả View trả về bằng việc truy vấn dữ liệu theo yêucầ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ìnhSQL trên cơ sở dữ liệu Store Procedure cho phép khai báo biến, nhận tham số

Trang 14

cúng như thực thi các phát biểu có điều kiện Store Procedure có các ưu điểmsau:

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àmtrong các ngôn ngữ lập trình truyền thống, đồng thời sử dụng lại khi

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ả chongườ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 đốitượ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áccô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 ứngdụng cơ sở dữ liệu dùng với các máy Desktop và với mô hình client/server chạydướ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ệuHTML mà WWW sử dụng Các JetEngine cơ sở dữ liệu được nâng cấp sẽ tăng tốccác bộ hỏi đối với các mô hình Client/Server có ODBC direct

Trang 15

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ộttậ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 ứngdụ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 đếncá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 ManagementSystem - DBMS) uyển chuyển: Oracle Server để lưu giữ và quản lý các thông tindù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 đốitượ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

Trang 16

Oracle cho phép định nghĩa các ràng buộc toàn vẹn cho các cột trong tablehay 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ànvẹ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ỏatrong 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ẫntham 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

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

Trang 17

Oracle mặc dù là hệ quản trị cơ sở dữ liệu mạnh vào loại nhất hiện naynhư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ợpdù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 đầutiên được giới thiệu vào năm 1990 trên nền Microsoft OS/2 cùng với Sybase Sảnphẩ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ànhWindows 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 đếntransaction, độ tin cậy và qui mô của hệ thống và đã trở thành một trong những sảnphẩ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 đượcnhữ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ácnhà 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ươngtranh 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ìnhlà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 filelog để phục hồi lại dữ liệu tại lần COMMIT gần nhất Để kiểm soát tương tranhtrong quá trình làm việc, SQL Server cũng sử dụng các cơ chế khoá (lock) SQLServer 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 saolưu dữ liệu đầy đủ của một cơ sở dữ liệu active và các file transaction log vẫn đượctạo trong khi người sử dụng đang truy vấn và cập nhật dữ liệu

Trang 18

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âulệ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 cungcấ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ácthà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 trongcá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ácthao 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ụngtrong các hệ thống cơ sở dữ liệu và là một thành phần không thể thiếu trongcá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ìnhnhư C, C++, Java, song các câu lệnh mà SQL cung cấp có thể được nhúngvà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

Trang 19

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ầnphả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ệncá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ồntạ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ệntrong 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ếpgiữ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êncá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ưutrữ 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ụ để giaotiế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ốngkhá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

Trang 21

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ớinhau 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ệuxuấ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ảngtrong 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ộtMAKHOA và của bảng KHOA

Trang 22

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ộttrong 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

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

Trang 23

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 quatê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ủamộ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ủabả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ênvớ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:

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

Trang 24

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ừ -231 đến 231 - 1

TINYTINT Số nguyên có giá trị từ 0 đến 255

SMALLINT Số nguyên có giá trị từ -215 đến

215 – 1

BIGINT Số nguyên có giá trị từ -263 đến 263-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

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)

Trang 25

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ỗirỗ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ảntrị 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ộtchương trình ứng dụng chạy trong Windows mà không cần tốn nhiều thời gian và côngsứ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ấpsẵ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++

Trang 26

Cách tiếp cận lập trình của Visual Basic theo hướng trực quan, kết quả từngcông đoạn cũng như toàn bộ hệ thống có thể kiểm chứng từng bước và được hỗ trợnhiều trong quá trình lập trình Thành phần “Visual” nói đến các phương thức dùng đểtạo giao diện đồ họa người sử dụng (GUI) Thay vì viết những dòng mã để mô tả sựxuất hiện và vị trí của những thành phần giao diện, ta chỉ cần thêm vào những đốitượng đã được định nghĩa trước ở vị trí nào đó trên màn hình Người lập trình có thĩdùng các đối tưỵng bao, cài đỉt cơ chế kết nhĩng đối tưỵng OLE, dùng các hàm trongcác thư viưn động DLL dơ dàng.

Thành phần “Basic” nói đến ngôn ngữ “BASIC” (Beginners All-PurposeSymbolic Instruction Code) một ngôn ngữ được dùng bởi nhiều nhà lập trình hơn bất

cứ một ngôn ngữ nào khác trong lịch sử máy tính Visual Basic được phát triển dầndần dựa trên ngôn ngữ BASIC, và bây giờ chứa đựng hàng trăm điều lệnh, hàm, và từkhóa… có quan hệ trực tiếp với giao diện đồ họa của Windows

b.Một số đặc điểm chính của Visual Basic

 Visual Basic là một ngôn ngữ lập trình hoàn thiện và hoạt động theo kiểu điềukhiển bởi sự kiện (Event - Driven programming language) nhưng lại rất giống ngônngữ lập trình có cấu trúc (Structured programming language )

 Nó cùng hỗ trợ các cấu trúc:

 Cấu trúc IF … THEN … ELSE

 Các cấu trúc lặp (Loops)

 Cấu trúc rẽ nhánh ( Select Case )

 Hàm ( Function ) và chương trình con ( Subroutines )

 Visual Basic đưa ra phương pháp lập trình mới, nâng cao tốc độ lập trình

 Cũng như các ngôn ngữ khác, mỗi phiên bản mới của Visual Basic đều chứa đựngnhững tính năng mới chẳng hạn Visual Basic 2.0 bổ sung cách đơn giản để điềukhiển các cơ sở dữ liệu mạnh nhất có sẵn,Visual Basic 4.0 bổ sung thêm phần hỗtrợ phát triễn 32-bit và bắt đẩu chuyển sang thành một ngôn ngữ lập trình hướngđối tượng đầy đủ, đến hiện nay mới nhất làVisual Basic 6.0 hỗ trợ nhiều tính năngmạnh chẳng hạn OLE DB để lập trình dữ liệu Các lập trình viên đã có thể dùngVisual Basic 6.0 để tự mở rộng Visual Basic

Trang 27

 Visual Basic có sẵn các công cụ như: các hộp văn bản ,các nút lệnh, các nút tùychọn, các hộp kiểm tra, các hộp liệt kê, các thanh cuộn, các hộp thư mục và tậptin Có thể dùng các khung kẻ ô để quản lý dữ liệu theo dạng bảng, liên lạc vớicác ứng dụng Windows khác, truy cập các cơ sở dữ liệu gọi chung là điều khiểnthông qua công nghệ OLE của Microsoft.

 Hệ trợ giúp trực tuyến đầy đủ giúp tham khảo nhanh trong khi phát triển một ứngdụng Tuy nhiên việc này trên VB 6 đòi hỏi phải có CD ROM

 Visual Basic còn hỗ trợ cho việc lập trình bằng cách hiện tất cả tính chất của đốitượng mỗi khi ta định dùng đến nó Đây là điểm mạnh của các ngôn ngữ lập trìnhhiện đại

 Các bước thiết kế một ứng dụng Visual Basic:

 Xây dựng các cửa sổ mà người dùng sẽ thấy

 Quyết định những sự kiện mà các điều khiển trên cửa sổ sẽ nhận ra

 Viết các thủ tục sự kiện cho các sự kiện đó (các thủ tục con khiến cho các thủtục sự kiện đó làm việc )

 Các nội dung diễn ra khi ứng dụng đang chạy:

 Visual Basic giám sát các cửa sổ và các điều khiển trong từng cửa sổ cho tất

cả mọi sự kiện mà từng điều khiển có thể nhận ra (các chuyển động chuột,các thao tác nhắp lên chuột, di chuyển, các gõ phím )

 Khi Visual Basic phát hiện một sự kiện , nếu không có một đáp ứng tạo sẵncho sự kiện đó, Visual Basic sẽ xem xét ứng dụng để kiểm tra người dùng

đã viết thủ tục cho sự kiện đó hay chưa

 Nếu đã viết rồi , Visual Basic sẽ thi hành và hình thành nên thủ tục sự kiện

đó và quay trở lại bước đầu tiên

 Nếu chưa viết thủ tục sự kiện , Visual Basic sẽ chờ sự kiện kế tiếp rồi quay

về bước đầu tiên

 Các bước này quay vòng cho đến khi ứng dụng kết thúc

Visual Basic for Application (VBA): Đây là ngôn ngữ Visual Basic được Microsoft

đưa vào trong các bộ phần mềm ứng dụng của hãng như Access, Excel… để giúpngười sử dụng tuỳ biến mở rộng chức năng của các ứng dụng, tự xây dựng nên cácchương trình phục vụ cho công việc cụ thể nào đó

Trang 28

1.4.3.2 Chọn ngôn ngữ lập trình

Sau quá trình tìm hiểu và phân tích hệ thống, trong đồ án tốt nghiệp của mình,ngôn ngữ lập trình được chọn là Visual Basic Lý do để chọn như vậy là:

 Visual Basic là một ngôn ngữ phổ biến, dễ sử dụng

 Có nhiều công cụ giúp cho việc lập trình quản trị cơ sở dữ liệu dễ dàng

 Thời gian phát triển ứng dụng nhanh, phù hợp với thời gian làm đồ án tốtnghiệp

 Để áp dụng chương trình trong môi trường mạng, ta chỉ cần thêm các câulệnh SQL để kết nối tới CSDL do một hệ quản trị CSDL đa người dùngquản lý chạy trên Server

1.4.3.3 Truy cập cơ sở dữ liệu trong Visual Basic

Khi lập trình bằng Visual Basic có thể làm nhiều việc với điều khiển dữ liệu màkhông cần mã lệnh, người lập trình dễ dàng xác định các tính chất chẳng hạnRecordSet, DataSource và DataField lúc thiết kế chương trình, cửa sổ Properties hiệnlên sẽ giúp tìm ra các thuộc tính cần thiết của các điều khiển gắn kết dữ liệu

Đối tượng cơ sở dữ liệu Recordset giống như một con trỏ trỏ đến các bảnghoặc tập các bản ghi là kết quả của một câu lệnh truy vấn SQL Trong thời gian lậptrình người lập trình sẽ làm việc hầu hết với các tính chất của đối tượng RecordSetliên quan đến điều khiển dữ liệu thay vì các tính chất của chính điều khiển dữ liệu

đó Ngoài ra Visual Basic cho phép người lập trình có thể tạo ra các đối tượng riêngcủa mình để làm việc với cơ sở dữ liệu không cần đi qua điều khiển dữ liệu Thậmchí không còn bị giới hạn chỉ sử dụng các collections và các đối tượng cơ sở dữliệu khác do Visual Basic cung cấp Đặc biệt người lập trình có thể viết mã lệnh,cho phép xây dựng và điều tác cơ sở dữ liệu theo mong muốn của mình, ví dụ có thểdùng câu lệnh tương tự sau:

Trang 29

Form:

Form là một biểu mẫu của mỗi ứng dụng trong Visual Basic Ta dùng Form nhằmmục đích định vị và sắp xếp các bộ phận trên nó khi thiết kế giao diệ với người sử dụng Ta có thể xem Form như một bộ phận mà nó có thể chứa các bộ phận khác và các bộ phận của chúng tạo nên giao tiếp cho ứng dụng Form chính là giao diện của ứng dụng, các Form khác có thể chứa các công cụ để nhập dự liệu, xem xét

Trong nhiều ứng dụng của Visual Basic, kích cỡ và vị trí của biểu mẫu lúc thiết kế

là kích cỡ mà người dùng sẽ gặp vào lúc sử dụng Điều này, có nghĩa là Visual Basic cho phép ta thay đổi kích cỡ và di chuyển vị trí Form đén bất cứ nơi nàotrên màn hình khi chạy một đồ án, bằng cách thay đổi một số thuộc tính của nó trên cửa sổ thuộc tínhđối tượng (Properties Windows) Thực tế, một trong tính năng thiếu của Visual Basic

là khả năng tiến hành thay đổi động để đáp ứng sự kiện người dùng

Hộp liệt kê (List box)

 Dùng tính chất Text để hiển thị thông tin đã được lưu trữ dưới dạng chuỗi

 Tính chất List: một mảng chuỗi chứa mọi mục, dùng để khởi tạo các mục tronghộp liệt kê

 Để chọn một mục trong hộp liệt kê ta nhắp chuột lên mục đó thông qua sự kiệnClick hay Double - Click

 Để thêm một phần tử vào danh máy tính, có thể dùng hộp property của List box

hay dùng: object AddItem item, index

 Khi xóa một phần tử trong danh máy tính cần biết giá trị index của phần tử đó

trong danh máy tính,có thể dùng: object Remove Item, index

Nếu xóa tất cả các phần tử trong danh máy tính thì dùng: object Clear

Scrollbar (Thanh cuốn):

Scrollbar là đối tượng cho phép nhận từ người dùng một giá trị tùy theo vị trí conchạy trên thanh cuốn thay cho các giá trị số

Thanh cuốn có các thuộc tính quan trọng sau:

 Thuộc tính Min: xác định cận dưới của thanh cuốn;

 Thuộc tính Max: xác định cận trên của thanh cuốn;

 Thuộc tính Value: xác định giá trị tạm thời của thanh cuốn

Option Button (Nút chọn):

Trang 30

Đối tượng nút chọn (thường được dùng nhiều nút) cho phép người dùng chon mộttrong những lựa chọn đưa ra Như vậy, tại một thời điểm chỉ có thể là một trongnhững nút chọn được chọn.

Checkbox (Hộp kiểm):

Cũng như nút chọn, đối tượng hộp kiểm được dùng nhiều hộp một lần Nhưng khácvới nút chọn, hộp kiểm cho phép người dùng lựa chọn một hay nhiều điều kiện.Như vậy tại một thời điểm có thể có nhiều hộp kiểm được chọn

Label (Nhãn):

Đối tượng nhãn cho phép người dùng gắn nhãn một bộ phận nào đó của giao diệntrong lúc thiết kế giao diện cho chương trình ứng dụng

Các nhãn dùng để hiển thị thông tin không muốn người dùng thay đổi Trong thực

tế, các nhãn thường được dùng để định danh một hộp văn bản hoặc một điều khiểnkhác bằng việc mô tả nội dung của điều khiển đó Một công cụ phổ biến cho việchiển thị thông tin trợ giúp

Picturebox, Image (hộp ảnh, điều khiển ảnh):

Đối tượng Image và Picturebox dùng để hiển thị ảnh Nó cho phép người thiết kếđưa ảnh từ các file ảnh (.bmp, gif ) lên Form

 Tính chất Style: định dạng của hộp combo

Style= 0 (drop down combo ), bao gồm một text box và một danh máy tính

các chọn lựa thả sẵn xuống

Trang 31

Style = 1 (simple combo box), hiển thị dưới dạng một text box và một danh

máy tính nhưng không thả xuống

 Các giá trị này có được bởi sự kiện Change

Style = 2 (drop down list ), một danh máy tính thả sẳn xuống.

 Các mục trong hộp sẽ được sắp xếp theo thứ tự ASCII khi chọn tính chất

Sorted = True Nếu không chọn, giá trị mặc định của tính chất Sorted =False, danhmáy tính các mục tùy thuộc vào danh máy tính đã đặt trong hộp liệt kê

 Dùng tính chất Text để hiển thị thông tin đã được lưu trữ dưới dạng chuỗi

 Tính chất List: một mảng chuỗi chứa mọi mục, dùng để khởi tạo các mục tronghộp liệt kê

Để thêm một phần tử vào danh máy tính, có thể dùng hộp property của List box

hay dùng: object AddItem item, index

Nếu xóa tất cả các phần tử trong danh máy tính thì dùng: object Clear

 Khi xóa một phần tử trong danh máy tính cần biết giá trị index của phần tử đó

trong danh máy tính,có thể dùng: object Remove Item, index

 Các phương pháp này tương tự như các phương pháp dùng cho List box

Ole ( đối tượng nhúng ):

Ole là viết tắt của Object - Linking and Embedding Nó cho phép ta nhúng toàn

bộ ứng dụng và dữ liệu từ một ứng dụng khác vào chương trình Ole không chỉ là 1 hệthống cho phép nhúng hay kết nối dữ liệu từ 1 ứng dụng khác mà vào thời gian chạycủa chương trình ta sẽ có 1 bản sao của ứng dụng đó trong chương trình của ta Nó cókhả năng automation cho phép đóng gói các đối tượng chức năng của ứng dụng để cóthể sử dụng trong ứng dụng khác

Project explorer :

Project explorer trong Visual Basic 6.0 giúp quản lý và định hướng các đề án, biểumẫu, các module,… Visual Basic cho phép tổ chức nhiều đề án trong 1 nhóm gọi làproject groups Ta có thể lưu tập hợp các đề án trong Visual Basic thành 1 tập tinnhóm đề án Các tập tin này có phần mở rộng là Vbg

Trang 32

Propeties windows ( cửa sổ thuộc tính ):

Là nơi chứa danh máy tính các thuộc tính của một đối tượng cụ thể Các thuộc tínhnày có thể khác nhau với từng đối tượng cụ thể Ta có thể đặt các thuộc tính cho phùhợp với các chương trình ứng dụng

VbDataActionCancel 0 Hủy bỏ các sự kiện của Data control

VbDataActionMoveFirst 1 Di chuyển đến record đầu tiên

VbDataActionMovePrevious 2 Di chuyển đến record trước đó

VbDataActionMoveNext 3 Di chuyển đến record kế tiếp

VbDataActionMoveLast 4 Di chuyển đến record cuối

VbDataActionAddNew 5 Thêm record

VbDataActionUpdate 6 Thay đổi, định nghĩa record

VbDataActionDelete 7 Xóa một record

VbDataActionFind 8 Tìm kiếm một record

VbDataActionBookmark 9 Tạo Bookmark

VbDataActionClose 10 Đóng Data control

VbDataActionUnload 11 Đóng một Form

Datacontrol có hình dạng mô tả trên hình 1.5

Hình 1.5: Hình Data Control

1.4.3.5 Lập trình trong Visual Basic:

ở phần trên, chúng ta mới chỉ biết tuỳ biến biểu mẫu bằng cách bổ xung cácđiều khiển vào cho phù hợp với yêu cầu của chương trình Tuy nhiên, đó chỉ có thể coi

là bộ mặt của chương trình Muốn chương trình chạy được thì chúng ta phải thêm vàocác thành phần khác như lệnh, dữ liệu và cách thức thể hiện chúng trong chươngtrình

Khi lập trình trong Visual Basic thì phần lớn các mã được xử lý để đáp ứng sựkiện Ví dụ như sự kiện kích chuột, bàm phím, load form…Các dòng mã thi hànhtrong một chương trình Visual Basic phải nằm trong các thủ tục hoặc hàm, các dònglệnh nằm ngoài sẽ không làm việc Toàn bộ mã lệnh được gõ vào trong cửa sổ code

Trang 33

Cửa sổ code:

Cửa sổ code bao gồm các thành phần sau:

Thanh tách: cửa sổ code có một thanh tách (Split bar) nằm đầu thanh cuốn dọc Mục

đìch của nó là: khi các dòng mã trở nên nhiều, ta có thể chia cửa sổ code thành 2 phần

Hộp liệt kê Object: nằm ở đầu cửa sổ code bên trái, nó liệt kê tất cả các điều

khiển có trên biểu mẫu và thêm vào một đối tượng có tên là: General Khi thả hộp liệt

kê và nhập vào một đối tượng nào đó thì sẽ đưa ta đến phần mã viết cho đối tượng đó

Hộp Procedure: hộp này cung cấp mọi sự kiện mà đối tượng đã được lựa chọn trong

hộp liệt kê object

Intellisence:

Intellisence là một công cụ thông minh, nó giúp ta đỡ mất công gõ và tra cứu.Intellisence mở các hộp liệt kê cùng với các thông tin về đối tượng mà ta đang tiếpcận Nó có 3 phần:

- QuickInfo: cho ta thông tin về cú pháp của 1 lệnh Visual Basic Mỗi khi nhập một

từ khoá theo sau là một dấu cách hoặc dấu chấm .một hộp thoại sẽ hiện ra cungcấp cú pháp của thành phần đó

- List properties/Methods: tính năng này đưa ra một danh máy tính các tính chất vàphương pháp của đối tượng ngay khi ta gõ dấu chấm

- Available constant : tính năng này cung cấp một danh máy tính các hằng sẵn có

Biến:

Trong Visual Basic, tên biến có thể dài tối đa 255 ký tự Ký tự đầu tiên phải là mộtchữ cái và tên biến có thể là một tổ hợp chữ cái, chữ số và dấu gạch dưới Không đượcdùng các từ khoá trong Visual Basic ( như end, print .) làm tên biến Visual Basickhông phân biệt chữ hoa, chữ thường

Cách khai báo biến: Dim <Tên biến> as <Kiểu biến>

Phạm vi sử dụng biến phụ thuộc vào cách khai báo biến và vị trí đặt dòng lệnhkhai báo

Các kiểu dữ liệu:

- String: các biến string lưu giữ các ký tự Một chuỗi có thể có một hay nhiều ký tự.

- Integer: biến nguyên lưu giữ các giá trị số nguyên từ -32768 đến +32767.

Trang 34

Long Integer: biến số nguyên dài lưu giữ các số nguyên giữa:

-2147483648 đến +214783647

- Single precision: các số có phần thập phân gồm: Single precision có độ chính xác

đến 7 chữ số và double precision có độ chính xác lớn đến 16 vị trí

- Currency: Biến tiền tệ là một kiểu mới Kiểu này cho ta 15 chữ số trước dấu thập

phân và 4 chữ số sau dấu thập phân

- Date: kiểu dữ liệu ngày tháng

- Byte: kiểu byte có thể lưu giữ các số nguyên từ 0 đến 255.

- Boolean: đây là kiểu logic vói các giá trị True/False.

- Variant: kiểu này được thiết kế để lưu mọi dữ liệu khác nhau của Visual Basic.

/ Chia, trả về kiểu số thực Y=4/2

- Các toán tử so sánh:

> So sánh xem số thứ nhất có lớn hơn số thứ 2 không

< So sánh xem số thứ nhất có nhỏ hơn số thứ 2 không

= So sánh số thứ nhất có bằng số thứ 2 không

<> So sánh số thứ nhất có khác số thứ 2 không

>= So sánh số thứ nhất có lớn hơn hay bằng số thứ 2 không

<= So sánh số thứ nhất có nhỏ hơn hay bằng số thứ 2 không

- Các toán tử Boolean:

And Chỉ nhận giá trị True nếu cả 2 số hạng đều là True

Or Chỉ nhận giá trị False nếu cả 2 số hạng đều là False

Not Phủ định giá trị của số hạng

Trang 35

CHƯƠNG II PHÂN TÍCH HỆ THỐNG

2.1 Khảo sát quá trình kinh doanh của các cửa hàng kinh doanh máy tính

Hiện nay các cửa hàng kinh doanh máy tính quản lý quá trình kinh doanh máytính của mình một cách thủ công Nghĩa là làm từ khâu đầu vào đến đầu ra đều làmtheo giấy tờ, sổ máy tính kế toán Hiện tại, các Cửa hàng kinh doanh máy tính đều có

02 khâu quan trọng nhất đó là: Quá trình xuất, nhập hàng và quá trình thống kê, tìmkiếm (Nhà cung cấp, khách hàng, nhân viên, sản phẩm) Sau đây ta tìm hiểu kỹ cácquá trình trên được thực hiện như thế nào, có kồng kềnh hay không và mất nhiều thờigian giành cho nó hay không:

* Quá trình xuất, nhập hàng:

- Hàng tháng, Người quản lý họp và nghe bộ phận kế toán báo cáo tình hìnhkinh doanh các mặt hàng hiện nay Số lượng các mặt hàng có trong kho như: số lượngcủa mỗi loại, còn nhiều hay đã hết

- Trong quá trình này người quản lý cũng nhận được các thông tin của Nhânviên bán hàng thông qua các giao dịch viên như là: số lượng bán ra; số lượng kháchhàng quen, số lượng khách hàng mới

- Nếu mặt hàng hết thì người quản lý sẽ tìm mặt hàng đó thông qua hệ thốngnhà cung cấp đã quen hoặc sẽ tìm nhà cung cấp mới

- Quá trình nhập hàng được thông qua bộ phận kế toán Bộ phận này khi đượclệnh của Giám đốc họ sẽ phát đơn yêu cầu đặt hàng đến nhà cung cấp, khi xem xét đơnyêu cầu đặt hàng của các cửa hàng, nhà cung cấp sẽ xuất hóa đơn bán hàng Khi nhàcung cấp xuất hóa đơn bán hàng (xuất hàng) thì các cửa hàng sẽ nhập hóa đơn (nhậphàng) đó

- Quá trình xuất hàng cũng được thực hiện tương tự, cụ thể như sau:

+ Nhân viên bán hàng nhận đơn đặt hàng của khách hàng , sau đó thống kê lại

để chuyển qua bộ phận kế toán;

+ Bộ phận kế toán lập kế hoạch cho từng đơn hàng đó, sau đó lập kế hoạch xuấthàng

Trang 36

+ Căn cứ theo kế hoạch xuất hàng, bộ phận kế toán chuẩn bị Phiếu cho đơn đặthàng đó (trên tờ hóa đơn có các thông số sau: tên mặt hàng, đơn giá, thành tiền, tổngtiền);

+ Sau khi viết hóa đơn, bộ phận kế toán chuyển cho nhân viên bán hàng vàđược chuyển tới khách hàng thông qua các giao dịch viên Quá trình này được làm thủcông

* Quá trình thống kê tìm kiếm:

Quá trình tìm kiếm cũng rất phức tạp, nó dựa trên các giấy tờ sổ máy tính Cácthông tin về tìm kiếm thường là các thông tin về nhà cung cấp, khách hàng, sản phẩm,Phiếu Cụ thể như sau:

- Tìm kiếm thông tin về nhà cung cấp: mỗi khi một mặt hàng nào hết hoặc là

đặt được đơn hàng của một khách hàng nào đó Nhân viên bán hàng báo cáo lên bộphận kế toán để chuẩn bị các mặt hàng mà khách hàng cần, bộ phận kế toán kiểm traxem lượng hàng trong kho còn hay là đã hết Nếu còn thì số lượng hàng đủ hay không,nếu thiếu thì mặt hàng đó được cung cấp bởi nhà cung cấp nào Bộ phận kế toán cũnglàm nhiệm vụ này, khi mà cần thì họ phải tìm tòi, lục lại các giấy tờ sổ máy tính liênquan đến nhà cung cấp mặt hàng đó Sau khi tìm xong bộ phận kế toán mới phát mộtđơn đặt hàng đến nhà cung cấp Kết thúc một quá trình tìm kiếm nhà cung cấp

- Tìm kiếm khách hàng: trong quá trình kinh doanh, mỗi một đơn vị, mỗi một

cá nhân khi mà hoạt động kinh doanh đều có một lượng khách hàng ổn định, họthường xuyên đặt hàng của đơn vị mình Quá trình kinh doanh đó gọi là chiến lượcchăm sóc khách hàng Thông thường mỗi tháng khách hàng sẽ phải nhập một lượngthuốc nhất định về cho đơn vị mình kinh doanh, việc lấy hàng định kỳ đó cần phải cómột đội ngũ giao dịch viên có dầy dặn kinh nghiệm để quản lý lượng khách hàng đó.Công việc này đòi hỏi mỗi tháng các giao dịch viên biết là lượng khách hàng trongtháng là bao nhiêu, tháng này có bao nhiêu khách hàng đến kỳ hạn mà cửa hàng phảicung cấp Quá trình này cũng phải được các giao dịch viên lên kế hoạch, tổng kết lạisau đó báo cáo lên nhân viên bán hàng, và nhân viên bán hàng tổng kết báo cáo lãnhđạo để cung cấp các mặt hàng cho các đơn vị khách hàng cũ Hiện nay các khâu nàyvẫn được làm thủ công, nghĩa là các giao dịch viên vẫn phải lên kế hoạch bằng sổ máytính, theo dõi hàng ngày qua sổ máy tính, mất rất nhiều thời gian

Ngày đăng: 18/08/2015, 16:33

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w