Lời giới thiệu
Hiện nay ở nớc ta việc sử dụng rộng rãi máy tính không chỉ còn bó hẹp
trong viện nghiên cứu, các trung tâm máy tính mà còn mở rộng ra mọi cơ
quan, xí nghiệp và nhà máy. Song song với quá tình phát triển trên, việc ứng
dụng công nghệ thông tin trong mọi lĩnh vực là phổ biến. Đặc biệt là cho các
bài toán quản lý.
Với sự giúp đỡ của thầy Phạm Công Ngô cùng với vốn kiến thức vững
chắc thầy đã truyền đạt ngay từ khi còn học C++ em đã bắt tay vào thực hiện
đề tài:
Quản lý Linh kiện của Công ty bán Máy Tính
bằng ngôn ngữ lập trình Visual C++ 6.0.
Những ngày đầu thực hiện đề tài em rất bỡ ngỡ và gặp nhiều khó khăn
khi tiếp xúc với ngôn ngữ Visual C++ 6.0. Nhng dới sự chỉ bảo của thầy Phạm
Công Ngô em đã dần dần hiểu về những tính năng và khả năng hỗ trợ tối đa
của ngôn ngữ lập trình Visual C++ 6.0 đối với ngời lập trình về mọi phơng
diện.
Mặc dù đã hết sức cố gắng, nhng do thời gian có hạn, đề tài này không
thể tránh khỏi những thiếu sót ngoài ý muốn cả về nội dung cũng nh cách
trình bày. Vậy em rất mong sự thông cảm và đóng góp của các thầy.
Để hoàn thành đề tài này em xin trân thành cảm ơn thầy Phạm Công
Ngô và toàn thể các thầy giáo trong khoa đã giúp đỡ chỉ bảo tận tình trong quá
trình hoàn thành đề tài.
Tôi cũng xin cảm ơn những bạn trong nhóm do thầy hớng dẫn đã giúp đỡ
tôi trong quá trình thực hiện đề tài này.
Chơng I. Ngôn ngữ lập trình Visual C++ 6.0
I. Giới thiệu về ngôn ngữ lập trình Visual C++ 6.0
Kể từ khi ngôn ngữ lập trình C ra đời tới nay đã trên 30. Trải qua giai
đoạn phát triển của ngỗn ngữ C++, không những ngời lập trình đã bớc vào thế
giới hớng đối tợng (OOP: Object Oriented Programming) mà còn cảm nhận đ-
ợc khả năng vô cùng mạnh mẽ của nó. Tiếp đến là bộ Visual Studio của
Microsoft đã giúp cho những ngời lập trình chuyên nghiệp đi sâu và xa hơn rất
Vùng làm việc:
Khi khởi đông Visual C++ lần đầu, một vùng ở bên trái của Developer
Studio đợc gọi là vùng làm việc (Workspace) và nó là nơi để bạn điều hớng tới
các phần khác nhau của các dự án (project) phát triển. Vùng làm việc cho bạn
xem các phần ứng dụng của mình bằng ba các trên các Tab sau:
- Class View: Đây là phần hiển thị cây các lớp đợc sử dụng trong chơng
trình ứng dụng của bạn và từ đây bạn điều hớng và điều tác tới mã nguồn tng
ứng của lớp đó (Hình 2).
Hình 2: Cửa sổ Class View của vùng Workspace.
- Resource View: Cho bạn tìm và hiệu chỉnh từng tài nguyên khác nhau
trong ứng dụng, bao gồm Bitmap, của sổ hội thoại (Dialog), các biểu tợng
(Icon) và các thanh menu (Hình 3).
5
Hình 3: Cửa sổ Resource View của vung Workspace.
- File View: Đây là phần hiển thị cây các file *.cpp, *.h đã đợc tạo ra trong
chơng trình và từ đay bạn có thể xem và điều hớng tới tất cả các file mà bạn
muốn tới để viết mã cho chơng trình ứng dung (Hình 4).
6
Vùng thông báo
Không thể thấy vùng thông báo xuất hiện (Output pane) khi bạn khởi
động Visual C++ lần đầu. Sau khi biên dịch ứng dụng đầu tiên của bạn, nó
xuất hiện ở dới cuối môi trờng Developer Studio và vẫn mở để cho bạn chọn
đóng lại. Ô cửa xuất hiện là nơi Developer Studio cung cấp bất kỳ thông tin
cần thiết và bạn sẽ thấy tất cả các chú thích của tiến trình của trình biên dịch,
các cảnh báo, các thông báo lỗi và là nơi gỡ rối (debugger) của Visual C++
hiển thị tất cả các biến với tất cả các giá trin hiện hành của chúng khi chạy mã
nguồn của bạn. Sau khi đóng ô cửa xuất hiện, nó tự mở lại khi Visual C++ có
bất kỳ thông điệp nào cần hiển thị cho bạn.
Vùng soạn thảo
Vùng ở bên trái của môi trờng Developer Studio là vùng của trình soạn
thanh Control Toolbar bao gồm các điều khiển sau (Hình 5):
Hình 5: Control Toolbar.
1: Chọn (Select)
2: Văn bản tĩnh (Static Text)
3: Hộp nhóm (Group Box)
4: Hộp kiểm (Check Box)
5: Hộp danh sách trải xuống (Combo Box)
6: Thanh cuốn ngang (Horizontal Scrollbar)
7: Xoay (Spin Control)
8: Thanh trợt (Slinder Control)
9
1
2
3
4
5
6
7
8
13
11
10
12
9
17
18
20
22
28
24
29: Điều khiển ActiveX (DataGrid Control)
- Văn bản tĩnh: Đây là điều khiển đợc đa vào để hiển thị dòng văn bản tới
ngời sử dụng. Ngời sử dụng sẽ không thể thay đổi văn bản hay tơng tác với
điều khiển, nó xem nh một điều khiển chỉ đọc. Tuy nhiên bạn có thể dễ dàng
thay đổi dòng văn bản đã hiển thị bởi điều khiển khi chơng trình đang chạy
qua mã lệnh bạn tạo cho ứng dụng.
- Hộp soạn thảo: Hộp soạn thảo cho phép ngời sử dụng nhập vào và có thể
thay đổi dòng văn bản trớc đó.
10
- Nút lệnh: là phím nổi để ngời sử dụng nhấn chuột vào đó và thực hiện một
sự kiện nào đó. Nút lệnh có thể đợc cài hình ảnh và viết chữ lên nó.
- Hộp kiểm: Là hộp nhỏ hình vuông để ngời sử dụng nhấn chuột vào đó, khi
đó hộp kiểm sẽ nhận giá trị chọn hay không chọn.
- Nút Radio: Là một vòng tròn, nó dùng kết hợp bộ hai phím trở lên. Mỗi
phím chỉ nhận một giá trị cho một trạng thái. Bạn thờng dùng phím Radio
thành nhóm ít nhất là hai và đợc bao quanh bởi hộp nhóm.
- Hộp Combo: Là hộp soạn thảo đợc gắn với danh sách các giá trị có sẵn.
Có lúc ngời lập trình cần gõ thêm vào các giá trị mà nó cha đợc đa vào hộp
danh sách.
- Hộp danh sách: Là hộp liệt kê theo hàng danh sáchcác giá trị đợc thêm
vào. Ngời dùng có thể di chuyển đến hàng mong muốn, nếu các giá trị đợc
hiển thị nhiều hơn kích thớc của hộp danh sách thì nó sẽ tự động có thêm
thanh trợt dọc (Vertical Scrollbar).
- Thanh tiến trình: Là một công cụ thờng đợc sử dụng đẻ chỉ ra sự tiến triển
của một hoạt động và thờng chạy từ trái sang phải khi chơng trình đợc hoàn
thành. Ngời sử dụng có thể dùng thanh tiến trình để sử dụng vào những ứng
dụng khác nhau nh nhiệt độ, mực nớc Trong ứng dụng của Window thì
thanh tiến trình đợc sử dụng khi cài đặt một chơng trình nào đó, hay sự sao lu
các tệp.
- Thanh trợt: Là một thanh trên đó có khắc giá trị mà bạn có thể di chuyển
Frame Window
View Object
(CView)
Messages passed to
the frame window
and view object
Two-way flow of inforamtion
between the document and
the view object
- Đây là môi trờng cho phép lập trinh viên tạo ra các ứng dụng đa tài liệu,
với mỗi một tài liệu có một hoặc nhiều vùng quan sát (View). Tại mỗi thời
điểm, ta có thể mở đợc nhiều tài liệu đồng thời. Các ứng dụng MDI cũng sử
dụng kiến trúc Document/View. Các ứng dụng tạo ra theo kiểu này giống nh
các trình ứng dụng Word, Excel, Access của Microsoft.
Sắp xếp lại môi trờng Developer Studio
Developer Studio cung cấp hai cách sắp xếp lại môi trờng phát triển rễ
ràng. Cách thứ nhất bằng cách nhấp chuột phải vào vùng của thanh công cụ.
Điều tác này mở menu bật lên nh đợc trình bày ở hình sau để bạn tắt hoặc mở
các thanh công cụ và các ô cửa khác nhau.
13
(CChildView)
View Object
(CView)
Application object
(CWinApp)
Document object
(CDocument)
Messages passed to
the frame window
and view object
15
các hộp thoại của chơng trình, thiết lập các thuộc tính của các điều khiển
ActiveX và cài các mã lệnh vào các sự kiện của các điều khiển ActiveX. Khi
sử dụng một điều khiển ActiveX trong chơng trình, tập tin ActiveX thờng đợ
đặt trong th mục \Windows\system.Một điều khiển ActiveX giống nh một th
viên liên kết động (Dynamic Linked Library), nó đợc liên kết với chơng trình
theo kiểu động.
Các điều khiển ActiveX mở rộng các đặc tính hộp thoại của Visual C+
+. Chúng cho phép bạn viết chơng trình với các kỹ xảo hiện đại.
16
Chơng II: Giới thiệu chung về ngôn ngữ SQL
- Cơ sở dữ liệu và quản trị cơ sở dữ liệu là một trong những vấn đề cốt lõi
của tin học. Xét cho cùng khi ứng dụng tin học để giải quyết các bài toán thì
ngời ta phải giải quyết vấn đề xây dựng cơ sở dữ liệu và xây dựng thuật toán
xử lý chúng. Khi cơ sở dữ liệu càng lớn nhu cầu xử lý phức tạp, yêu cầu bảo
mật càng cao thì vấn đề quản trị cơ sở dữ liệu càng phức tạp. Tìm hiểu khai
thác SQL Server.
- Lý do chọn Microsoft SQL Server:
- Xuất phát từ đặc điểm bài toán kích thớc lớn, phân tán, đa ngời sử dụng.
- MS SQL Server là hệ quản trị cơ sở dữ liệu hỗ trợ tốt với lợng dữ liệu lớn,
cho phép ngời sử dụng theo mô hình Client/Server.
- MS SQL Server tiện dụng trong việc phân tán tra cứu dữ liệu nhanh.
- MS SQL Server hỗ trợ mạnh với dữ liệu phân tán.
- MS SQL Server chạy trên môi trờng Win NT (Server) và Win 9.X, Win
2000 (Client), ...
- SQL Server là một trong những hệ phần mềm tiện lợi và hiệu quả trong
việc phát triển các ứng dụng cơ sở dữ liệu lớn, phân tán thích hợp cho cơ quan,
tổ chức, địa phơng, ...
- MS SQL Server hỗ trợ tốt trong quản lý xử lý đồng nhất, bảo mật dữ liêu
theo mô hình Client/Server trên mạng.
Chơng III: Cấu trúc MS SQL Server
I. Nhóm Server và Server
1. Tạo nhóm Server
- Bạn có thể tạo nhóm Server với SQL Server Enterprise Manager và đặt
Server của bạn trong nhóm Server. Nhóm Server cung cấp hớng thích hợp để tổ
chức số lợng lớn Server vào trong một nhóm.
- Các bớc tạo một nhóm Server mới (Enterprise manager)
- Trên menu Tools, chọn Register SQL Server.
- Trong hộp thoại Register SQL Server Properties, trong hộp Server, hãy
nhấp browse(...) để truy cập vào một danh sách các Server trên mạng.
- Trong hộp Server Group, nhấp browse(...).
- Trong hộp name, nhập vào tên một nhóm Server.
- Trong hộp level, hãy nhấp:
- Top level group để tạo một nhóm Server mới ở mức cao nhất.
- Sub-group of, rồi nhấp một nhóm Server để lập danh sách nhóm Server
mới trong một nhóm Server đang có.
2. Cách đăng ký một Server
- Trên menu Tools, chọn Register SQL Server.
- Trong hộp thoại Register SQL Server Properties, trong hộp Server, hãy
nhập tên của SQL Server để đăng ký, hoặc nhấp browse(...) để truy cập vào
một danh sách các Server trên mạng.
- Trong hộp Connect, hãy nhấp:
- Use SQL Server Authentication để nỗi vào SQL Server với Microsoft
Windows NT login ID password của bạn.Use Windows NT Server
Authentication, rồi nhấp một tên login và một password mà Server có thể nhận
19
biết. để bổ xung một lớp của mức an toàn hãy chọn Always promt for login
name password.
- Trong danh sách Server Group, hãy nhấp tên của SQL Server mà ở đó bạn
muốn đa vào Server đã đợc đăng ký, hoặc nhấp browse(...) để tạo một nhóm
thể ngăn cản ngời sử dụng từ đối tợng tạo ra trong cơ sở dữ liệu chính bằng
cách thay đổi ngầm định của ngời sử dụng cơ sở dữ liệu. Tuy nhiên ngời quản
trị hệ thống ngầm định cơ sở dữ liệu nên giữ nguyên cơ sở dữ liệu chính.
2. Mô hình cơ sở dữ liệu (Model Database)
- Mô hình cơ sở dữ liệu chứa đựng bảng hệ thống, yêu cầu cho mỗi ngời sử
dụng cơ sở dữ liệu. Nó cũng có thể đợc sửa đổi theo hớng tuỳ biến cấu trúc
mới tạo ra cơ sở dữ liệu cũng nh mọi thay đổi bạn tạo ra mô hình đợc phản ánh
trong mỗi cơ sở dữ liệu mới. Có một vài thay đổi chung tạo ra mô hình:
- Thêm vào loại dữ liệu ngời sử dụng, các ràng buộc, các quy tắc hoặc
ngầm định.
- Thêm vào ngời sử dụng nào là đợc truy cập toàn bộ cơ sở dữ liệu trên SQL
Server.
Lựa chọn cấu hình cơ sở dữ liệu ( nh là select into/bulkcopy), thiết lập
trong mô hình cơ sở dữ liệu.
3. Cơ sở dữ liệu Msdb (Msdb Database)
- Cơ sở dữ liệu Msdb hỗ trợ thực hiện SQL và cung cấp vùng lu trữ các
thông tin lập biểu trong thời gian cài đặt phần mền Server. Chơng trình cài đặt
tự động tạo ra hai device ( 2MB & 1MB ) trên ổ đĩa tơng tự nh là cơ sở dữ liệu
chính rồi đặt cơ sở dữ liệu Msdb trên 2MB device ( MSDBDATA ) và thực
hiện nhập vào device 1MB ( MSDBLOG ).
22
4. Cơ sở dữ liệu Tempdb (Tempdb Database)
- Cơ sở dữ liệu Tempdb là chia sẻ không gian làm việc sử dụng bởi
cơ sở dữ liệu trên SQL Server. Các bảng tạm thời của ngời sử dụng là
mất đi từ Tempdb khi ngời sử dụng hiện hành thoát khỏi SQL Server
hoặc trong thời gian truy lại từ sự dừng lại của hệ thống. Thủ tục lu
trữ các bảng tạm thời là mất đi khi thủ tục thoát ra. Bảng tạm thời
cũng có thể mất đi trớc khi kết thúc phiên. Kích thớc ngầm định của
Tempdb là 2MB. Hoạt động nào đó theo sau có thể cần thiết tạo nên
để tăng kích thớc của Tempdb:
SELECT Name
FROM SysObject
WHERE Type = S
- SQL Server có thủ tục lu trữ hệ thống cung cấp lối tắt cho truy vấn hệ
thống bảng.
7. Thủ tục lu trữ hệ thống (System Store Procedure)
- Thủ tục lu trữ hệ thống là tập hợp trớc khi biên dịch câu lệnh Transact-
SQL. Nhiều thủ tục lu trữ hệ thống có sẵn cho việc quản trị SQL Server và
hiển thị thông tin về cơ sở dữ liệu và ngời sử dụng.
- Phần lớn tên thủ tục lu trữ hệ thống bắt đầu với SP_. Thủ tục lu trữ hệ
thống xác định vị trí trong cơ sở dữ liệu chính và chính bởi ngời quản trị hệ
thống. Nhng nhiều thủ tục lu trữ hệ thống có khả năng chạy từ bất kỳ cơ sở dữ
24
liệu nào. Nếu thủ tục lu trữ hệ thống thực hiện trong cơ sở dữ liệu khác với cơ
sở dữ liệu chính thì nó đang làm việc trên hệ thống bảng trong cơ sở dữ liệu từ
bảng hệ thống đợc thực hiện.
- Thêm vào thủ tục lu trữ hệ thống và thủ tục lu trữ mở rộng đợc cài đặt với
SQL Server. Thủ tục lu trữ mở rộng cung cấp thêm chức năng cho SQL Server,
cung cấp bằng cách nạp động và thực hiện chức năng với th viện liên kết động
(DLL=Data Library Link) gắn liền với chức năng mở rộng SQL Server. Hoạt
động bên ngoài SQL Server có thể dễ dàng kích hoạt và thông tin mở rộng trở
lại SQL Server. Mã trạng thái trở lại & tham số đầu ra là cũng đợc hỗ trợ.
- SQL Server bao gồm hệ thống lu trữ thủ tục có thể thêm vào và xoá đi thủ
tục lu trữ mở rộng, cung cấp thông tin về thủ tục lu trữ mở rộng.
- Hơn thế SQL Server cung cấp số lợng thủ tục lu trữ hệ thống, thủ tục lu
trữ hệ thống khác có thể tạo ra bởi ngời lập trình sử dụng dịch vụ dữ liệu mở
của Microsoft.
8. Thiết lập kí tự và trật tự sắp xếp (Character Sets & Sort Order)
- Thiết lập kí tự xác định loại kí tự mà SQL Server chấp nhận trong cơ sở dữ
liệu. Thiết lập kí tự là thiết lập 256 chữ cái, chữ số và các biểu tợng đặc trng