Mục lục
Mục lục 1
LỜI NÓI ĐẦU 4
Chương 1. KHẢO SÁT NGHIỆP VỤ TẠI CÔNG TY. 6
1.1. GIỚI THIỆU CÔNG TY TNHH BÌNH MINH. 6
1.2. SƠ ĐỒ TỔ CHỨC CÔNG TY. 7
1.3. MỤC ĐÍCH YÊU CẦU BÀI TOÁN. 8
1.3.1. Mục đích. 8
1.3.2. Yêu cầu. 8
1.4. NỘI DUNG PHƯƠNG PHÁP THỰC HIỆN. 9
1.5. NGHIỆP VỤ QUẢN LÝ VẬT TƯ HIỆN TẠI. 9
1.6. MỘT SỐ MẪU BIỂU CỦA CÔNG TY. 12
1.7. DANH SÁCH THIẾT BỊ VẬT TƯ CỦA CÔNG TY. 14
1.8. HIỆN TRẠNG VÀ GIẢI PHÁP KHẮC PHỤC. 18
1.8.1. Hiện trạng. 18
1.8.2. Giải pháp khắc phục 19
Chương 2. CÔNG CỤ CÀI ĐẶT 20
2.1. NGÔN NGỮ LẬP TRÌNH C# 20
2.1.1. Chương trình đầu tiên ! 21
2.1.2. Biến và Hằng 21
2.1.3. Kiểu dữ liệu trong C# 22
2.1.4. Câu lệnh điều kiện 24
2.1.5. Lớp 26
2.1.6. Operators 27
2.1.7. Operator Shortcuts 28
2.1.8. Operator Precedence 29
2.1.9. Namespaces 29
2.2. TÌM HIỂU VỀ SQL SERVER 2005 EXPRESS. 31
2.2.1. Tổng quan về cơ sở dữ liệu 31
2.2.2. Giới thiệu về SQL Server 2005 Express. 34
Chương 3. PHÂN TÍCH THIẾT KẾ. 43
3.1. CÁC DỮ LIỆU CẦN QUẢN LÝ CỦA CHƯƠNG TRÌNH. 43
3.1.1. Các dữ liệu đầu vào. 43
3.1.2. Các dữ liệu đầu ra. 43
3.2. XÁC ĐỊNH YÊU CẦU NGHIỆP VỤ CỦA CÔNG TY. 44
3.2.1. Xác định yêu cầu của nhân viên nhập vật tư. 44
3.2.2. Xác định yêu cầu của nhân viên xuất vật tư. 44
3.2.3. Xác định yêu cầu của nhân viên quản lý kho. 44
3.2.4. Xác định yêu cầu của người quản trị. 44
3.3. SƠ ĐỒ DỮ LIỆU. 45
3.3.1. Sơ đồ ngữ cảnh. 45
3.3.2. Sơ đồ phân rã chức năng. 46
3.4. XÁC ĐỊNH CÁC THỰC THỂ. 55
3.4.1. Các thực thể 55
3.4.2. Một số quan hệ giữa các thực thể 58
3.5. XÂY DỰNG CÁC BẢNG CƠ SỞ DỮ LIỆU 62
3.5.1. Bảng Users. 62
3.5.2. Bảng Oders. 62
3.5.3. Bảng VatTu. 62
3.5.4. Bảng NhomVatTu. 63
3.5.5. Bảng DonViTinh. 63
3.5.6. Bảng KhachHang. 63
3.5.7. Bảng NhomKhachHang. 64
3.5.8. Bảng PhieuNhap. 64
3.5.9. Bảng PhieuXuat. 64
3.5.10. Bảng PhieuThanhLy. 65
3.5.11. Bảng PhieuThuHoi. 65
3.5.12. Bảng ChiTietNhap. 66
3.5.13. Bảng ChiTietXuat. 66
3.5.15. Bảng ChiTietThuHoi. 67
3.5.16. Bảng DonGiaNgay. 67
3.5.17. Bảng TonKho. 68
3.5.18. Bảng QuyDoi 68
3.5.19. Bảng ThongTinCongTy. 68
3.6. MÔ HÌNH LIÊN KẾT CÁC BẢNG DỮ LIỆU. 69
Chương 4. THIẾT KẾ CHƯƠNG TRÌNH. 70
4.1. THIẾT KẾ FORM CHƯƠNG TRÌNH. 70
4.1.1. Giao diên chính 70
4.1.2. Giới thiệu một số form chương trình 72
KẾT LUẬN 86
TÀI LIỆU THAM KHẢO 87
87 trang |
Chia sẻ: lethao | Lượt xem: 8200 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đồ án Quản lý thiết bị vật tư, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
liệu đều được nhân viên kho thu thập và thống kê trên giấy tờ, chính vì thế các loại giấy tờ, hồ sơ liên quan ngày càng gia tăng rất nhiều, đồng thời do sự phát triển của công ty nên số lượng thiết bị vật tư nhập và xuất ngày càng gia tăng, khối lượng công việc lớn và tính chất công việc phức tạp, do đó tạo nên sự khó khăn cho công tác quản lý rất nhiều.
Công việc quản lý bằng thủ công tạo rất nhiều khó khăn và áp lực, đòi hỏi phải giải quyết khối lượng công việc lớn mà cũng không thể tránh khỏi những nhầm lẫn, đồng thời với số lượng công việc như vậy phương pháp thủ công đòi hỏi mất rất nhiều thời gián để giải quyết. Việc lưu trữ thông tin thiết bị vật tư bằng giấy tờ ngày càng nhiều làm cho tủ sổ sách ngày càng gia tăng lên.
Nếu người dùng muốn tìm kiếm thông tin có liên quan đến thiết bị vật tư nào đó hiện có trong kho thì lại phải tra cứu rất nhiều cuốn sổ lưu trữ khác nhau trong tủ sổ sách kia mới tìm ra thông tin. Muốn tìm thông tin về vật tư xuất, nhập và tồn kho thì lại mất rất nhiều thời gian tra cứu thông tin trên các phiếu nhập, xuất vật tư theo thời gian.
Thao tác cân đối giữa nhập mới và xuất vật tư lại phải được nhân viên kho thực hiện thủ công. Muốn làm được việc này nhân viên kho phải xem lại sổ sách ghi chi tiết việc nhập và xuất kho, từ đó xem lượng hàng tồn kho là bao nhiêu, hạn sử dụng của vật tư đã hết chưa
Việc thống kê báo cáo cũng trở nên khó khăn vì mất nhiều thời gian lấy các thông tin từ các sổ ghi. Nhân viên làm báo cáo phải tự tay sao chép thông tin từ sổ ghi chép vật tư, sổ ghi nhập, xuất, thanh lý, thu hồi…
Các hồ sơ giấy tờ lưu trữ thường hay bị hư hỏng, mất mát do điều kiện môi trường và do điều kiện ngoại cảnh, con người, vì thế khả năng mất mát thông tin là khó tránh khỏi.
Giải pháp khắc phục
Từ những tồn tại và khó khăn trên, đòi hỏi việc tin học hóa vấn đề quản lý là hết sức cần thiết và quan trọng, cụ thể là xây dựng một phần mềm quản lý trên hệ thống máy tính, cụ thể ở đây là chương trình “ Quản lý vật tư ”.
Phần mềm xây dựng cần đáp ứng được đầy đủ các yêu cầu nghiệp vụ quản lý, và khắc phục được những tồn tại của hệ thống quản lý hiện tại mắc phải.
Chương trình phần mềm phải dễ sử dụng, thao tác nhanh, giao diện thân thiện với người dùng
Phần mềm phải đáp ứng được các thao tác về dữ liệu như nhập mới, thêm, sửa, xóa, thống kê báo cáo.
Phần mềm phải có chức năng cho phép người dùng tra cứu tìm kiếm thông tin vật tư đang sử dụng, thanh lý, nhập mới…
Phải đảm bảo được tính bảo mật thông tin ở mức cao nhất có thể. Điều này thể hiện ở việc phân loại người dùng khi đăng nhập hệ thống, cấp quyền cho người truy cập hệ thống
CÔNG CỤ CÀI ĐẶT
NGÔN NGỮ LẬP TRÌNH C#
C# là một ngôn ngữ rất đơn giản, với khoảng 80 từ khoá và hơn mười kiểu dữ liệu dựng sẵn, nhưng C# có tính diễn đạt cao. C# hỗ trợ lập trình có cấu trúc, hướng đối tượng, hướng thành phần (component oriented).
Định nghĩa lớp trong C# không đòi hỏi tách rời tập tin tiêu đề với tập tin cài đặt như C++. Hơn thế, C# hỗ trợ kiểu sưu liệu mới, cho phép sưu liệu trực tiếp trong tập tin mã nguồn. Đến khi biên dịch sẽ tạo tập tin sưu liệu theo định dạng XML.
C# hỗ trợ khái niệm giao diện, interfaces (tương tự Java). Một lớp chỉ có thể kế thừa duy nhất một lớp cha nhưng có thế cài đặt nhiều giao diện.
C# có kiểu cấu trúc, struct (không giống C++). Cấu trúc là kiểu hạng nhẹ và bị giới hạn. Cấu trúc không thể thừa kế lớp hay được kế thừa nhưng có thể cài đặt giao diện.
C# cung cấp những đặc trưng lập trình hướng thành phần như property, sự kiện và dẫn hướng khai báo (được gọi là attribute). Lập trình hướng component được hỗ trợ bởi CLR thông qua siêu dữ liệu (metadata). Siêu dữ liệu mô tả các lớp bao gồm các phương thức và thuộc tính, các thông tin bảo mật ….
C# cũng cho truy cập trực tiếp bộ nhớ dùng con trỏ kiểu C++, nhưng vùng mã đó được xem như không an toàn. CLR sẽ không thực thi việc thu dọn rác tự động các đối tượng được tham chiếu bởi con trỏ cho đến khi lập trình viên tự giải phóng.
Chương trình đầu tiên !
Chương này ta sẽ tạo, biên dịch và chạy chương trình “Hello World” bằng ngôn ngữ C#. Phân tích ngắn gọn chương trình để giới thiệu các đặc trưng chính yếu trong ngôn ngữ C#.
Ví dụ Chương trình Hello World
class HelloWorld
{ Static void Main( )
{ // sử dụng đối tượng console của hệ thống
System. Console. WriteLine("Hello World");
}
}
Biến và Hằng
Biến
Một biến dùng để lưu trữ giá trị mang một kiểu dữ liệu nào đó. Cú pháp C# sau đây để khai báo một biến :
[ modifier ] datatype identifer ;
Phạm vi hoạt động của biến (Variable Scope): là vùng đoạn mã mà từ đấy biến có thể được truy xuất.
Trong một phạm vi hoạt động (scope), không thể có hai biến cùng mang một tên trùng nhau.
Hằng:
Một hằng (constant) là một biến nhưng giá trị không thể thay đổi được suốt thời gian thi hành chương trình. Đôi lúc ta cũng cần có những giá trị bao giờ cũng bất biến.
Thí dụ
const int a=100; // giá trị này không thể bị thay đổi
Kiểu dữ liệu trong C#
Các kiểu Integer:
Name
CTS Type
Description
Range(min:max)
sbyte
System. SByte
8-bit signed integer
-128:127 (-27:27-1)
short
System. Int16
16-bit signed integer
-32, 768:32, 767 (-215:215-1)
int
System. Int32
32-bit signed integer
-2, 147, 483, 648:2, 147, 483, 647 (-231:231-1)
long
System. Int64
64-bit signed integer
-9, 223, 372, 036, 854, 775, 808: 9, 223, 372, 036, 854, 775, 807 (-263:263-1)
byte
System. Byte
8-bit signed integer
0:255 (0:28-1)
ushort
System. UInt16
16-bit signed integer
0:65, 535 (0:216-1)
uint
System. UInt32
32-bit signed integer
0:4, 294, 967, 295 (0:232-1)
ulong
System.UInt64
64-bit signed integer
0:18, 446, 744, 073, 709, 551, 615(0:264-1)
Kiểu dữ liệu số dấu chấm di động (Floating Point Types)
Name
CTS Type
Description
Significant Figures
Range (approximate)
Float
System. Single
32-bit single-precision floating- point
7
±1. 5 × 10-45 to ±3. 4 × 1038
Double
System. Double
64-bit double-precision floating- point
15/16
±5. 0 × 10-324 to ±1. 7 × 10308
Kiểu dữ liệu số thập phân (Decimal Type):
Name
CTS Type
Description
Significant Figures
Range (approximate)
decimal
System. Decimal
128-bit high precision decimal notation
28
±1. 0 × 10-28 to ±7. 9 × 1028
Kiểu Boolean :
Name
CTS Type
Value
Bool
System. Boolean
true or false
Kiểu Character Type:
Name
CTS Type
Value
char
System. Char
Represents a single 16-bit (Unicode) character
Kiểu tham khảo tiền định nghĩa:
Name
CTS Type
Description
object
System. Object
The root type, from which all other types in the CTS derive (including value types)
string
System. String
Unicode character string
Các ký tự escape thông dụng:
Escape Sequence
Character
\'
Single quote
\"
Double quote
\\
Backslash
\0
Null
\a
Alert
\b
Backspace
\f
Form feed
\n
Newline
\r
Carriage return
\t
Tab character
\v
Vertical tab
Câu lệnh điều kiện
Câu lệnh điều kiện if :
Cú pháp như sau:
if (condition)
statement(s)
[else
statement(s)]
Câu lệnh switch
Các câu lệnh if nằm lồng rất khó đọc, khó gỡ rối. Khi bạn có một loạt lựa chọn phức tạp thì nên sử dụng câu lệnh switch.
Cú pháp như sau:
switch (biểu thức)
{ casce biểu thức ràng buộc:
câu lệnh
câu lệnh nhảy
[default: câu lệnh mặc định]
}
Vòng lặp for:
cú pháp:
for (initializer; condition; iterator)
statement(s)
Vòng lặp while (The while Loop)
Cú pháp như sau :
while(condition)
statement(s);
Vòng lặp do... while (The do…while Loop)
do
{ // Vòng lặp này sẽ thực hiện ít nhất một lần thậm chí nếu câu điều kiện sai
MustBeCalledAtLeastOnce();
condition = CheckCondition();
} while (condition);
Vòng lặp foreach (The foreach Loop)
Cho phép bạn rảo qua tất cả các phần tử bản dãy hoặc các tập hợp khác, và tuần tự xem xét từng phần tử một. Cú pháp như sau:
foreach (type identifier in expression) statement
Câu lệnh break
Ta dùng câu lệnh break khi muốn ngưng ngang xương việc thi hành và thoát khỏi vòng lặp.
Câu lệnh continue
Câu lệnh continue được dùng trong vòng lặp khi bạn muốn khởi động lại một vòng lặp nhưng lại không muốn thi hành phần lệnh còn lại trong vòng lặp, ở một điểm nào đó trong thân vòng lặp.
Câu lệnh return
Câu lệnh return dùng thoát khỏi một hàm hành sự của một lớp, trả quyền điều khiển về phía triệu gọi hàm (caller). Nếu hàm có một kiểu dữ liệu trả về thì return phải trả về một kiểu dữ liệu này; bằng không thì câu lệnh được dùng không có biểu thức.
Lớp
Class tạo nên một chương trình lớn trong C#. Tuy nhiên nó thực sự có khả năng viết một chương trình mà không sử dụng đến lớp.
Lớp là một khuôn mẫu thiết yếu mà chúng ta cần tạo ra đối tượng. Mỗi đối tượng chứa dữ liệu và các phương thức chế tác truy cập dữ liệu. Lớp định nghĩa cái mà dữ liệu và hàm của mỗi đối tượng riêng biệt (được gọi là thể hiện) của lớp có thể chứa. Ví dụ chúng ta có một lớp miêu tả một khách hàng nó được định nghĩa các trường như CustomerID, FirstName, LastName, và Address, cái mà chúng ta giữ thông tin cụ thể khách hàng. Nó cũng có thể được miêu tả bởi các hành động trong các trường dữ liệu.
Hàm thành phần (Function Members):
Modifier
Description
new
Phương thức ẩn một phương thức kế thừa với cùng kí hiệu
public
Phương thức có thể được truy cập bất kỳ
protected
Phương thức có thể bị truy xuất không từ lớp nó thuộc hoặc từ lớp dẫn xuất;
internal
Phương thức có thể được truy cập không cùng assembly
private
Phương thức có thể được truy cập từ bên trong lớp nó phụ thuộc
static
Phương thức có thể không được tính trên trên một lớp thể hiển cụ thể
virtual
Phương thức bị ghi đè bởi một lớp dẫn xúât
abstract
Phương thức trừu tượng
override
Phương thức ghi đè một phương thức ảo kế thừa hoặc trừu tượng.
sealed
Phương thức ghi đè một phương thức ảo kế thừa, nhưng không thể bị ghi đè từ lớp kế thừa này
extern
Phương thức được thực thi theo bên ngoài từ một ngôn ngữ khác
Operators
Category
Operator
Arithmetic
+ - * / %
Logical
& | ^ ~ && || !
String concatenation
+
Increment and decrement
++ --
Bit shifting
>
Comparison
== != =
Assignment
= += -= *= /= %= &= |= ^= >=
Member access (for objects and structs)
.
Indexing (for arrays and indexers)
[]
Cast
()
Conditional (the Ternary Operator)
?:
Object Creation
new
Type information
sizeof (unsafe code only) is typeof as
Overflow exception control
checked unchecked
Indirection and Address
* -> & (unsafe code only) []
Operator Shortcuts
Shortcut Operator
Tương đương
x++, ++x
x = x + 1
x--, --x
x = x - 1
x += y
x = x + y
x -= y
x = x – y
x *= y
x = x * y
x /= y
x = x / y
x %= y
x = x % y
x >>= y
x = x >> y
x <<= y
x = x << y
x &= y
x = x & y
x |= y
x = x | y
x ^= y
x = x ^ y
Operator Precedence
Group
Operators
(). [] x++ x-- new typeof sizeof checked unchecked
Unary
+ - ! ~ ++x --x and casts
Multiplication/Division
* / %
Addition/Subtraction
+ -
Bitwise shift operators
>
Relational
= is as
Comparison
== !=
Bitwise AND
&
Bitwise XOR
^
Bitwise OR
|
Boolean AND
&&
Boolean OR
||
Ternary operator
?:
Assignment
= += -= *= /= %= &= |= ^= >= >>>=
Namespaces
Namespace cung cấp cho ta cách mà chúng ta tổ chức quan hệ giữa các lớp và các kiểu khác. Namespace( địa bàn hoạt động của các tên) là cách mà. NET tránh né việc các tên lớp, tên biến, tên hàm.. đụng độ vì trùng tên giữa các lớp.
Câu lệnh using
Từ khoá using giúp bạn giảm thiểu việc phải gõ những namespace trước các hàm hành sự hoặc thuộc tính
Bí danh Namespace
Một cách sử dụng khác từ khoá using là gán những bí danh cho các lớp và namespace. Nếu bạn có 1 namespace dài lê thê mà bạn muốn quy chiếu nhiều chỗ trên đoạn mã. bạn có thể gán một alias cho namespace.
Cú pháp :using alias = NamespaceName;
TÌM HIỂU VỀ SQL SERVER 2005 EXPRESS.
Tổng quan về cơ sở dữ liệu
Các khái niệm
Cơ sở dữ liệu (Database): là một tập hợp các dữ liệu tác nghiệp của một đơn vị, một doanh nghiệp hay một cá nhân, được lưu lại và được sử dụng bởi các hệ thống ứng dụng của đơn vị, doanh nghiệp hay cá nhân ấy. Cơ sở dữ liệu còn được hiểu là một tập hợp các thông tin được tổ chức hợp lý để có thể truy xuất nhanh khi cần sử dụng.
Thực thể (Entity): là một đối tượng cần quan tâm trong công tác quản lý, nó có thể là:
Cụ thể: một nhân viên, một tổ chức, một hoá đơn,…
Trừu tượng: một môn học, một khoa trong trường đại học,…
Dữ liệu quan hệ (Relation Data): là dữ liệu được tổ chức thành các bảng gồm các hàng và các cột. Mỗi bảng ứng với một kiểu thực thể. Trong một bảng, mỗi cột biểu diễn một thuộc tính của thực thể, mỗi hàng thể hiện đầy đủ các dữ liệu về một thực thể cụ thể.
Cơ sở dữ liệu quan hệ (Relation Database): là cơ sở dữ liệu sử dụng mô hình dữ liệu quan hệ (Relation Data Model) như: Access, SQL Server, Oracle, My SQL,…
Hệ quản trị cơ sở dữ liệu (Relation Database Management System – RDMS): là hệ thống giúp các nhà quản trị làm việc với cơ sở dữ liệu như Microsoft Access, Microsoft SQL Server 2005 Express, …
Trường dữ liệu (Data Field): là dữ liệu để mô tả một đặc trưng nào đó của thực thể ( họ tên, ngày sinh,…) hoặc để phân biệt thực thể này với thực thể khác (mã sinh viên, mã sách,…).
Kiểu dữ liệu (Data Type): là một khái niệm trừu tượng, được đặc trưng bởi độ lớn và miền giá trị. Nó có thể là: text, numeric, datetime, int,…
Mối quan hệ (Relation): là sự mô tả sự liên hệ giữa các phần tử của các tập thực thể với nhau, chúng là các gắn kết các tập thực thể với nhau, có các kiểu quan hệ như sau:
Kiểu quan hệ 1-1: mỗi thực thể của tập thực thể này có liên hệ với một thực thể của tập thực thể kia.
Kiểu quan hệ 1-n: mỗi thực thể của tập thực thể này có liên hệ với nhiều thực thể của tập thực thể kia.
Kiểu quan hệ m-n: m thực thể của tập thực thể này có liên hệ với n thực thể của tập thực thể kia. Quan hệ này thường được tách ra thành các quan hệ 1-1 và 1-n.
Lược đồ quan hệ (Relation Diagram): lược đồ quan hệ là sự hợp thành bởi hai yếu tố:
Một cấu trúc, gồm tên quan hệ và một danh sách các thuộc tính.
Một tập hợp các ràng buộc, tức là các điều kiện mà mọi quan hệ trong lược đồ đều phải thoả mãn.
Phụ thuộc hàm bắc cầu: Cho lược đồ quan hệ R và tập phụ thuộc hàm F xác định trên R; X, Y ÍR, AÎR. Nếu ta có: X à Y, Y àA và AÏXY thì ta nói A phụ thuộc hàm bắc cầu vào X. A được gọi là thuộc tính phụ thuộc bắc cầu, Y là các thuộc tính cầu.
Các dạng chuẩn dữ liệu
Có 3 dạng chuẩn cơ bản (Normal Form - NF):
Dạng chuẩn 1 (1NF): lược đồ quan hệ chỉ chứa các thuộc tính đơn (không còn thuộc tính lặp).
Dạng chuẩn 2 (2NF): là dạng chuẩn 1 và mọi thuộc tính không khoá của lược đồ quan hệ phải phụ thuộc hàm đầy đủ vào khoá chính.
Dạng chuẩn 3 (3NF): là dạng chuẩn 2 và lược đồ quan hệ không tồn tại thuộc tính không khoá phụ thuộc hàm bắc cầu vào khoá.
Phương pháp chuẩn hoá dữ liệu
Trường hợp quan hệ chưa là 1NF: Lúc này, lược đồ quan hệ tồn tại các thuộc tính lặp. Khi đó ta tách lược đồ quan hệ thành hai lược đồ quan hệ con:
Lược đồ quan hệ 1: gồm các thuộc tính lặp và khoá chính xác định chúng.
Lược đồ quan hệ 2: gồm các thuộc tính còn lại và khoá chính.
Trường hợp quan hệ chưa là 2NF: Lúc này, lược đồ quan hệ tồn tại thuộc tính không khoá phụ thuộc không đầy đủ vào khoá chính. Khi đó ta tách lược đồ quan hệ thành hai lược đồ quan hệ con:
Lược đồ quan hệ 1: gồm các thuộc tính phụ thuộc không đầy đủ vào khoá chính và phần khoá bị phụ thuộc.
Lược đồ quan hệ 2: gồm các thuộc tính còn lại và khoá chính.
Trường hợp quan hệ chưa là 3NF (đang là 2NF): Lúc này, trong lược đồ quan hệ tồn tại phụ thuộc hàm bắc cầu. Khi đó ta tách lược đồ quan hệ thành hai lược đồ quan hệ con:
Lược đồ quan hệ 1: gồm các thuộc tính phụ thuộc bắc cầu và thuộc tính cầu.
Lược đồ quan hệ 2: gồm các thuộc tính còn lại và thuộc tính cầu.
Giới thiệu về SQL Server 2005 Express.
Tổng quan
SQL Server 2005 Express là phiên bản đặc biệt của SQL Server 2005, sản phẩm của hãng phần mềm Microsoft. Sở dĩ có tên như vậy là vì hệ quản trị cơ sở dữ liệu này sử dụng công cụ quản lý cơ sở dữ liệu theo phong cách Express (nhanh). SQL Server 2005 cải tiến khả năng quản lý và bảo mật thông qua việc cung cấp cho toàn quyền viên nhiều công cụ điều khiển hơn trên những thể hiện cục bộ và từ xa của SQL Server. Microsoft SQL Server 2005 Express Edition miễn phí, dễ sử dụng, gọn nhẹ, và khả nhúng, là một trong những hệ quản trị cơ sở dữ liệu quan hệ hàng đầu hiện nay. Ngoài SQL Server 2005 Express ra thì SQL Server 2005 còn có các phiên bản khác là:
SQL Server 2005 Enterprise Edition
SQL Server 2005 Standard Edition
SQL Server 2005 Workgroup Edition
Với SQL Server 2005 Express, quản trị viên có thể:
Xây dựng những ứng dụng điều khiển dữ liệu linh hoạt và đáng tin cậy với môi trường thao tác quản lý dữ liệu trực quan, đơn giản.
Hỗ trợ các Website động (tương tác với người dùng), hỗ trợ sẵn XML trong cơ sở dữ liệu để đảm bảo Website có thể tương tác với những ứng dụng khác thông qua các dịch vụ Web.
Tạo ra các báo cáo một cách nhanh chóng, với những bảng, những biểu đồ, đồ hoạ, và nhúng chúng trong các ứng dụng.
Đơn giản hoá thao tác triển khai và phục vụ của cơ sở dữ liệu tác nghiệp.
Các đặc trưng của SQL Server 2005 Express
Dễ cài đặt và quản lý:
Download nhanh, miễn phí tại địa chỉ: com/sql/2005
Đơn giản hoá việc cài đặt giao diện người dùng.
Nhúng tốt, triển khai hợp nhất
Cơ sở dữ liệu phân tán:
Dễ sao lưu, di chuyển cơ sở dữ liệu
Hỗ trợ các giao dịch phân tán
Hỗ trợ XML:
Có sẵn kiểu dữ liệu XML
Hỗ trợ dữ liệu có cấu trúc và nửa cấu trúc
Hỗ trợ truy vấn XML và lược đồ XML
Cung cấp nhiều chức năng cơ sở dữ liệu:
Diagrams (lược đồ quan hệ):
Stored procedures (thủ tục nội trú), Functions (hàm)
Tables (bảng), Views (khung nhìn)
Triggers (bẫy lỗi)
Kiểu dữ liệu Cursor (con trỏ)
Indexes (các chỉ số mở rộng)
Advanced query (truy vấn nâng cao)
Hỗ trợ Transact-SQL
Các dịch vụ tìm kiếm và báo cáo,…
Tích hợp sâu trong Visual Studio 2005:
Thiết kế, cập nhật và truy vấn cơ sở dữ liệu ngay trong môi trường của Visual Studio.
Truy nhập dữ liệu với ADO.NET.
Bảo mật cao:
Bảo mật theo các thiết lập mặc định, các phân quyền.
Bảo mật nhờ các Stored Procedure (thủ tục nội trú), hỗ trợ Active Directory (thư mục tích cực).
Các kiểu dữ liệu trong SQL Server 2005
Kiểu dữ liệu
Bytes
Diễn giải
Bigint
8
Dữ liệu số nguyên có giá trị từ -263 đến 263-1
Binary
Dữ liệu nhị phân có chiều dài cố định, tối đa 8000 bytes
Bit
1
Dữ liệu bít có giá trị 0 (False) hay 1 (True)
Char
Dữ liệu ký tự Non-Unicode chiều dài cố định, tối đa 8000 ký tự
DateTime
8
Dữ liệu ngày tháng, có giá trị từ 01/01/1753 đến 31/12/9999
Decimal
Số từ -1038-1 đến 1038-1
Float
Số từ -1.79E+308 đến -1.79E+308
Image
Dữ liệu nhị phân có chiều dài biến đổi, tối đa 232-1 bytes
Int
4
Dữ liệu số nguyên có giá trị từ -232 đến 232-1
Money
8
Kiểu dữ liệu tiền tệ, có giá trị từ-263 đến 263
Nchar
Dữ liệu ký tự Unicode chiều dài cố định, tối đa 4000 ký tự
Ntext
Dữ liệu ký tự Unicode chiều dài biến đổi, tối đa 1,073,741,823 ký tự
Numeric
Tương tự Decimal nhưng chỉ dùng trong SQL
Nvarchar
Dữ liệu ký tự Unicode chiều dài biến đổi, tối đa 4000 ký tự
Nvarchar(MAX)
Dữ liệu ký tự Unicode chiều dài biến đổi > 4000 ký tự
Real
Số từ -1.18E – 38 đến 0 và 1.18E - 38 đến 3.40E + 38
SmallDateTime
4
Dữ liệu ngày tháng, có giá trị từ 01/01/1990 đến 31/12/2079
SmallInt
2
Dữ liệu số nguyên có giá trị từ -216 đến 216-1
SmallMoney
4
Kiểu dữ liệu tiền tệ, có giá trị từ-231 đến 231
Sql_variant
Kiểu dữ liệu tuỳ biến
Text
Dữ liệu ký tự Non-Unicode chiều dài biến đổi, tối đa 2,147,483,647 ký tự
TimeStamp
TinyInt
1
Dữ liệu số nguyên có giá trị từ 0 đến 255
UniqueIndentifier
16
Nhận dạng toàn cục duy nhất theo không gian và thời gian
Varbinary
Dữ liệu nhị phân có chiều dài biến đổi, tối đa 8000 bytes
Varbinary(MAX)
Dữ liệu nhị phân có chiều dài biến đổi >8000 bytes
Varchar
Dữ liệu ký tự Non-Unicode chiều dài biến đổi, tối đa 8000 ký tự
Varchar(MAX)
Dữ liệu ký tự Non-Unicode chiều dài biến đổi > 8000 ký tự
Xml
Dữ liệu XML (eXtensible Markup Language), lưu trữ tối đa 2 GB
Làm việc với SQL Server 2005 Express
Với SQL Server, người dùng có thể lập trình xử lý dữ liệu ngay trong cơ sở dữ liệu, cụ thể là việc tạo ra các Trigger, Store procedures, Function,…Khi lập trình cho cơ sở dữ liệu SQL Server cần có những hiểu biết cơ bản như sau:
Cách khai báo biến:
DECLARE @,
[@]
Ví dụ:
DECLARE @Age, @Number Int
Các hàm hệ thống:
Các hàm này có dạng @@TÊN, như @@ROWCOUNT (trả về số lượng mẩu tin có ảnh hưởng đến phát biểu SQL cuối cùng), @@DATEFIRST (trả về ngày đầu tiên trong tuần),...
Thực thi câu lệnh SQL:
EXEC () hoặc EXECUTE ().
Ví dụ:
EXEC (‘SELECT * FROM Student WHERE Age>21’)
Xây dựng Stored Procedures:
Stored Procedures được xây dựng bởi những phát biểu SQL và T-SQL, được lưu trữ như một phần của cơ sở dữ liệu dưới dạng một văn bản text. Khi cần thực thi chỉ cần gọi chúng như gọi một thủ tục hay một hàm. Cấu trúc của Stored Procedures như sau:
USE
GO
CREAT PROC [@,
[@]]
AS
Ví dụ:
USE Account
GO
CREAT PROC sp_ShowCust
AS
SELECT CustNo, CustName, CustCity
FROM tblCustomer
Thực thi Stored Procedures:
EXEC
Ví dụ:
EXEC sp_ShowCust
Thay đổi Stored Procedures bằng câu lệnh:
Tương tự phần tạo Stored Procedures, chỉ khác là sử dụng từ khoá ALTER thay cho từ khoá CREATE
Xoá Stored Procedures bằng câu lệnh
DROP PROC .
Ví dụ:
USE Account
GO
DROP PROC sp_ShowCust
Phát biểu điều khiển:
Nhìn vào khía cạnh lập trình thì SQL cũng sử dụng các phát biểu thông dụng như: IF…ELSE, GOTO, WHILE, CASE, WAITFOR, RETURN,… Các phát biểu điều kiện này thường được dùng trong các Stored Procedure. Ở đây cần chú ý phát biểu WAITFOR dùng để chỉ thị cho SQL tạm dừng một thời gian nhất định trước khi xử lý tiếp các phát biểu sau, cú pháp có dạng như sau:
WAITFOR
DELAY (chờ trong khoảng thời gian)|
TIME (chờ cho đến thời gian)
Ví dụ 1:
WAITFOR
DELAY ’01:00’
Ví dụ 2:
WAITFOR
TIME ’01:00’
Xây dựng Functions:
Một Function có thể trả về một giá trị hoặc một bảng. Cú pháp để tạo ra một Function như sau:
CREAT FUNCTION [dbo.]
(
[ ,[] ]
)
RETURNS
| TABLE
AS
BEGIN
RETURN (kiểu dữ liệu trong mệnh đề RETURNS) | (‘câu lệnh SELECT’)
END
Ví dụ:
Hàm trả về một giá trị:
USE Account
GO
CREAT FUNCTION dbo.Dngay (@Date datetime)
RETURN varchar(12)
AS
BEGIN
RETURN
CONVERT(varchar(12), @Date, 105)
END
Hàm trả về một bảng dữ liệu:
USE Account
GO
CREAT FUNCTION dbo.Dngay (@Date datetime)
RETURN TABLE
AS
RETURN
( SELECT * FROM tblCustomer WHERE Date>@Date
)
Để xoá một Function chỉ cần dùng câu lệnh DROP FUNCTION.
Ví dụ:
USE Account
GO
DROP FUNCTION Dngay
PHÂN TÍCH THIẾT KẾ.
CÁC DỮ LIỆU CẦN QUẢN LÝ CỦA CHƯƠNG TRÌNH.
Các dữ liệu đầu vào.
Thông tin về vật tư, về nhóm vật tư, số lượng đơn giá của vật tư, tình trạng của chúng.
Thông tin về khách hàng, về nhà phân phối cụ thể là tên, địa chỉ, đơn vị đại diện, mã số tài khoản, ngân hàng.
Thông tin về công nợ đầu vào, số lượng hàng tồn kho.
Thông tin về công ty, về nhân viên, về những người quản lý, chức danh và nhiệm vụ của họ, quyền truy cập hệ thống của họ.
Các dữ liệu đầu ra.
Báo cáo chi tiết vật tư, số lượng tồn kho, đã nhập và xuất bao nhiêu, doanh thu của chúng.
Báo cáo chi tiết về khách hàng, danh sách các nhà phân phối, công nợ phải trả họ, đã nhập của họ những loại vật tư nào, số lượng, tổng chi, danh sách chi tiết các khách hàng đã mua vật tư của công ty, mua những loại vật tư nào, số lượng bao nhiêu, tổng tiền là bao nhiêu, công nợ phải trả của họ.
Thống kê, báo cáo lương hàng tồn kho, công nợ phải trả, phải thu.
Báo cáo đơn giá vật tư
XÁC ĐỊNH YÊU CẦU NGHIỆP VỤ CỦA CÔNG TY.
Xác định yêu cầu của nhân viên nhập vật tư.
Nhân viên nhập vật tư yêu cầu hệ thống được xây dựng đáp ứng được việc nhập vật tư mới nhập về của công ty một cách nhanh chóng và thuận tiện, cho biết thông tin chi tiết của vật tư. Giao diện phải thân thiện, gần gũi rễ tiếp cận hệ thống, phải có hỗ trợ phím tắt để thao tác nhập dữ liệu được nhanh. Hệ thống phải đáp ứng được việc đưa ra phiếu nhập vật tư và ghi chi tiết vật tư khi vật tư được đáp ứng yêu cầu nhập. Phải báo cáo được chi tiết các hóa đơn nhập vật tư của các nhà phân phối theo thời gian lựa chọn.
Xác định yêu cầu của nhân viên xuất vật tư.
Nhân viên xuất vật tư yêu cầu hệ thống cho biết thông tin chi tiết về vật tư, cho phép cập nhập vật tư xuất ra, đồng thời ghi phiếu xuất vật tư khi vật tư được xuất kho, báo cáo chi tiết các hóa đơn xuất vật tư của khách hàng.
Xác định yêu cầu của nhân viên quản lý kho.
Nhân viên quản lý kho yêu cầu hệ thống cung cấp đầy đủ thông tin về vật tư, thông tin xuất, nhập, thanh lý, thu hồi vật tư, cho biết được thông tin công nợ phải trả khách hàng (các nhà phân phối) và công nợ phải thu của khách hàng. Để từ đó tổng hợp về vật tư tồn kho, công nợ xuất ra báo cáo để báo cáo lên ban lãnh đạo.
Xác định yêu cầu của người quản trị.
Người quản trị của hệ thống yêu cầu được xem tất cả các th
Các file đính kèm theo tài liệu này:
- Đề Án Quản Lý Thiết Bị Vật Tư.doc