Thứ Hai, 20 tháng 1, 2014

TỔNG QUAN VỀ NGÔN NGỮ CÀI ĐẶT.doc

Đồ án tốt nghiệp Trang 5
Cơ sở dữ liệu SQL Server là một cơ sở dữ liệu đa người dùng, với mỗi
server bạn chỉ có một hệ quản trị cơ sở dữ liệu. nếu muốn có nhiều hệ quản trị cơ
sở dữ liệu bạn cần có nhiều server.
Khi cài đặt xong ban có 6 cơ sở dữ liệu mặc định.
• Master.
• Model.
• Msdb.
• Pubs.
• Northwind.
 Master: Đây là cơ sở dữ liệu chính để chạy SQL Server. Cơ sở dữ
liệu này chứa một con trỏ chỉ đến file dữ liệu cơ sở về các cơ sở dữ liệu và được
cài đặt trên hệ thống, cũng như thông tin dịch vụ chính. Các thông tin dịch vụ
bao gổm các mục như các thông báo lỗi hệ thống, các thông tin được cập nhật
vào, các thủ tục được lưu trữ của hệ thống, và các máy chủ được kết nối hay liên
kết. cơ sở dữ liệu Master chỉ có thể truy cập lại khi gặp tình huống tai hoạ nhờ
các kỹ thuật đặc biệt.
 Cơ sở dữ liệu model: Đây là cơ sở dữ liệu mẫu. mỗi khi bạn tạo
một cơ sở dữ liệu mới, cơ sở dữ liệu Model sẽ được sao chép, sau đó các yêu
cầu của bạn về kích thước và các thay đổi khác vể cơ sở dữ liệu được áp dụng.
Do đó, mọi đối tượng có trong cơ sở dữ liệu này sẽ được sao chép vào cơ sở dữ
liệu mới như là nó được tạo mới ở đó. Ví dụ bạn có thể đặt bảng hoặc tên người
sử dụng vào cơ sở dữ liệu này ngay khi cài đặt SQL Server. mỗi khi có một cơ
sở dữ liệu tạo ngay sau đó, bảng và tên người sử dụng sẽ xuất hiện trong moi cơ
sở dữ liệu. Cơ sở dữ liệu Model có kích thước 1,5 MB sau khi cài đặt. vì cơ sở
dữ liệu được sao chép để tạo dựng cơ sở dữ liệu mới nên không có cơ sở dữ liệu
nào nhỏ hơn cơ sở dữ liệu Modl.
 Cơ sở dữ liệu Tempdb: Cơ sở dữ liệu Tempdb là một trong những
cơ sở dữ liệu chính trong SQL Server. Cơ sở dữ liệu cho phép người sử dụng tạo
những ứng dụng tham khảo hay thực tập trước khi bạn bắt đầu với cơ sở dữ liệu
thật.
Cơ sở dữ liệu Tempdb là nơi các sắp xếp, kết nối và các hoạt động khác
đòi hỏi vị trí tạm thời được thực hiện. cơ sở dữ liệu này có kích thước 2,5 MB.
Nhưng nó có thể tăng thêm khi bạn cần thêm khoảng trống. Nó sẽ được khởi tạo
lại mỗi khí SQL Server được khởi động lại.
 Cơ sở dữ liệu Pubs: Cơ sở dữ liệu Pubs chứa hầu hết nội dung
hướng dẫn, trợ giúp và cả sách tham khảo về SQL Server, hầu hết các tính năng
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 6
cơ sở dữ liệu đều được nêu bật qua việc cài đặt chúng vào cơ sở dữ liệu Pubs.
Cơ sở dữ liệu có kích thước 2MB sau khi cài đặt. Bạn có thể xoá cơ sở dữ liệu
này mà không cần xác nhận với SQL Server.
 Cơ sở dữ liệu Northwind:Cũng giống cơ sở dữ liệu Pubs đây
cung là một cơ sở dữ liệu mẫu cho người dùng tham khảo, hoặc các lập trình
Visual Basic hay Access dùng để truy cập SQL Server. Cơ sở dữ liệu này được
cài đặt như một phần của SQL Server, nếu cần dùng cấu trúc của hai cơ sở dữ
liệu này bạn có thể sử dụng hai file kịch bản Script mang tên Inspubs.sql và
insnwnd.sql.
 Tập tin chuyển tác log: Chứa những hoạt độnghay cả những
chuyển tác của cơ sở dữ liệu theo thời gian. Thông thường khi tìm sự cố xẩy ra
với cơ sở dữ liệu, người dùng chỉ cần tham khảo tập tin log sẽ biết được nguyên
nhân.
III. GIỚI THIỆU VỀ ĐỐI TƯỢNG CỦA CƠ SỞ DỮ LIỆU.
1. 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, bảng là đối tượng căn bản nhất trong bất kỳ loại cơ sở dữ
liệu nào, chúng được coi như một miền dữ liệu.
Bảng dùng để lưu trữ tất cả dữ liệu và được tổ chức thành nhiều hàng
và nhiều cột. Mỗi cột trong bảng có thể lưu một loại thông tin nhất định gọi là
kiểu dữ liệu, dữ liệu nhập vào có thể chấp nhận hoặc từ chối tuỳ thuộc vào
nguyên tắc ràng buộc dữ liệu hoặc dữ liệu tương thích do hệ thống hay người
dùng định nghĩa.
Khi định nghĩa cơ sở dữ liệu ta cần quan tâm đến các thông số sau:
 Key: Trường đó có khoá hay không.
 ID: Trường có thuộc tính Indentity hay không.
 Culumn 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à indentity: yes
(no)
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 7
 Identity seed: Nếu trường (cột) này là identity, cần số bặt đầu số
1hoặc 2…
2. Chỉ mục – Indexs.
Index hay con gọi là chỉ mục, đối tượng này chỉ tồn tại trong bảng hay
khung nhìn (view). chỉ mục này có ảnh hưởng tới tốc độ truy cập số liệu, nhất là
khi cần tìm kiếm thông tin trên bảng. chỉ mục giúp tăng tốc độ cho việc tìm
kiếm.
 Clustered: Ứng với mỗi chỉ mục này một bảng chỉ có một chỉ mục, và
số liệu được sắp xếp theo trang.
 Non-clustered: Ứng với chỉ mục này một bảng có thể có nhiều chỉ
mục và dữ liệu được sắp xếp theo trường dữ liệu mà bạn chỏ tới.
3. Bẫy lỗi- Triggers: Nếu đối tượng chỉ tồn tại trong bảng, cụ thể
là một đoạn mã, và tự động thực thi khi có một hành động nào đó xảy ra đối với
dữ liệu trong bảng như: Insert, Update, Delete.
Ttigger có thể sử dụng để bẫy rất nhiều tình huống như copy dữ liệu, xoá
dữ liệu, cập nhật dữ liệu, kiểm tra dữ liệu theo tiêu chuẩn nào đó.
Trong SQL Server 2000 có kỹ thuật mới gọi là INSTEAD OF trigger,
kỹ thuật này cho phép bạn thực hiện những hành động khác nhau tuỳ theo cách
mà người dùng tương tác.
4. Ràng buộc – Constaints: Là một đối tượng, nó là một phần nhỏ
trong bảng, chúng ràng buộc dữ liệu trong bảng hoặc các bảng khác phải tuân
theo một quy tắc nào đó.
5. Diagram (lược đồ quan hệ): Khi xây dựng cơ sở dữ liệu cho ứng
dụng hay thương mại điện tử, thường phải dựa trên trình phân tích thiết kế hệ
thống. Sau những bước phân tích và thiết kế, ban sẽ thiết lập quan hệ dữ liệu
giữa các thực thể ERD (Entrity Relationship Diagram)
6. Khung nhìn (View): Là khung nhìn hay một bảng ảo của bảng.
Cũng giống như bảng nhưng View không thể chứa dữ liệu, bản thân View có thể
tại thêm trường mới dựa vào những phép toán, biểu thức của SQL Server. Bên
cạnh đó View có thể kết nối nhiều bảng lại với nhau theo quan hệ nhất định cùng
với những tiêu chuẩn, nhằm tạo ra một bảng theo nhu cầu của người dùng. Mục
đích của View là kiểm soát tất cả những gì mà người sử dụng muốn thấy, nó bao
gồm hai ảnh hưởng chính đó là bảo mật và dễ sử dụng.
7. Thủ tục nội (stored Procedure): Thủ tục nội hay còn gọi là
Spocs, tiếp tục phát triển như một phần lập trình SQL trên cơ sở dữ liệu . Stored
Procedure cho phép khai báo biến, nhận tham số cúng như thực thi các phát biểu
có điều kiện. Stored Procedure co các ưu điển sau:
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 8
 Kế thừa tất cả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 SQL Server.
 Tiết kiệm thời gian thực thi trên dữ liệu.
 Có thể gọi những Stored Procedure theo cách gọi của thủ tục
hay hàm trong các ngôn ngữ lập trình truyền thống, đồng thời sử dụng lại khi có
yêu cầu.
8. Sử dụng kiểu dữ liệu Cursor: khi dùng cơ sở dữ liệu SQL
Server, nếu có tính toán trên bảng số liệu, chuyển tác thực hiện trên từng mẩu tin
bạn hãy nghĩ đến kiểu dữ liệu mang tên Cursor.
IV. KIỂU DỮ LIỆU (DATA TYPE)
Bất kỳ trường nào trong bảng của cơ sở dữ liệu đều phải có kiểu dữ liệu.
Một số kiểu dữ liệu SQL Server cho phép đinh nghĩa chiều dài của kiểu trong
khi một số khác thì không. SQL Server kế thừa những kiểu dữ liệu của SQL
Server 7.0 và cung cấp thêm một số kiểu dữ liệu mới. Các kiểu dữ liệu của SQL
Server có thể được phân thành các nhóm sau: String (chuỗi), chuỗi Unicode
binary (nhị phân), Integer (số nguyên ), approximate numeric (số gần đúng), data
and time (ngày giờ), Money (tiền tệ), ……
Ngoài ra SQL Server còn cho chuyển đổi qua lại giữa các kiểu dữ liệu,
tuy nhiên điều này cũng có một số hạn chế đối với một số kiểu dữ liệu. Ví dụ
kiểu Binary không cho phép chuyển đổi sang kiểu dữ liệu số Float hay real.
V. CÁC CÔNG CU CHÍNH CỦA SQL SERVER 2000.
1. Trợ giúp trực tuyến (books online): Là một công cụ trợ giúp
trực tuyến, giúp cho người làm việc trên SQL truy tìm những vấn đề có liên quan
đến cơ sở dữ liệu SQL Server. Trong một trừng mực nào đó, người lập trình
không thể nhớ hết các cú pháp, hàm hay các phép toán cũng như các thủ tục
SQL, chính vì thế mà Books Online là công cụ trợ giúp trực tuyến tốt nhất.
2. Tiện ích Mạng Client/ Server: Đây là công việc do người quản trị
mạng đảm nhận. Để các máy PC khác có thể kết nối và sử dụng cơ sở dữ liệu
SQL Server trong hệ thống mạng bạn cần các tiện ích trên máy trạm giống như
cấu hình của Server. SQL Server cung cấp một thư viện Net-libraries hay còn
gọi là NetLibs, thư viện này bao gồm nhiều nghi thức kết nối cho phép các máy
trạm có thể truy cập cơ sở dữ liệu vào SQL Server:
 Named Pipes.
 TCP/IP.
 Multiprotocol.
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 9
 Nwlink IPX/SPX.
 AppleTalk.
 Banyan VINES.
 Shared Memory.
 VIA.
3. Trình Enterprise Managar: Là màn hình điều khiển khi quản trị
SQL Server. Enterprise Managar cung cấp cho người quản trị nhiều chức năng
để quản lý SQL Server bằng giao diện đồ hoạ, chức năng của Enterprise
Managar bao gồm:
 Tạo, cập nhật, xoá cơ sở dữ liệu và đối tượng của chúng.
 Tạo, cập nhật, xoá các gói Data transformation Packages.
 Quản lý lịch trình Backup.
 Quản lý người dùng đang truy cập SQL Server và cơ sở dữ liệu.
 Cấu hình Job Management.
 Cập nhật, tạo, xoá, quyền Login User.
 Thiết lập và quản lý Mail Server.
 Tạo và quản lý tìm kiếm.
 Cấu hình cho Server.
 Tạo và cấu hình cho Replication.
Ngoài ra Enterprise Managar còn có một số chức năng khác như đăng
ký nhiều Server khác.
4. Trình Query Analyzer: Công cụ này giúp cho bạn phát triển hay
gỡ rối trong SQL Server, Query Analyzer là công cụ cung cấp bởi SQL Server,
là trình soạn thảo và thực thi câu lệnh SQL hay Stored Procedure.
VI. CÁC PHÁT BIỂU CƠ BẢN CỦA T-SQL
1. Phát biểu Select:
Phát biểu Select là một trong những phát biểu yêu cầu SQL Server là gì
đó trên cơ sở dữ liệu. Select dùng để đọc thông tin từ cơ sở dữ liệu theo những
trường quy định, hay những biểu thức cho trường đó.
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 10
FROM: Để chỉ ra nơi chứa dữ liệu (hay bảng cần truy vấn), WHERE chỉ
ra điều kiện lấy dữ liệu .
ORDER BY: Dùng để hiển thị kết quả truy vấn theo tiêu chuẩn của người
dùng. Nếu thiếu tham số này thi việc sắp xếp sẽ theo thứ tự ALPHABET.
Cú pháp của phát biểu Select:
SELECT<Danh sách các cột>
[ FROM <Danh sách các bảng>]
[ WHERE <Các điều kiện ràng buộc> ]
[ GROUP BY<Tên cột hay biểu thức sử dụng cột trong SELECT> ]
[ HAVING <điều kiện bắt buộc dựa trên GROUP BY> ]
[ ORDER BY <Danh sách các cột> ]
Những Phát biểu Lằm trong dấu [ ] thì có thể có hoặc có thể không có.
 Dấu * cho phép lọc bảng tin với tất cả các trường trong bảng.
Vi dụ:
Để lấy tất cả các tỉnh trong bảng tblTinh ta dùng phát biểu sau:
SELECT *
FROM tblTinh.
 Nếu muốn chỉ dõ những trường nào cần lọc bạn cần nêu tên của
những trường đó.
SELECT *
FROM tblBenhnhan
WHERE tblBenhNhan.TenbenhNhan= ‘ Nguyễn văn Tuấn ‘
Ngoài những câu lệnh truy vấn trên, Trong SQL còn cung cấp một số
hàm cũng như một số biểu thức toán học.
2. Nhập dữ liệu bằng phát biểu INSERT.
Khi thêm mẩu tin vào trong SQL Server 2000, có nhiều cách để thực hiện
công việc này. Trong Visual Basic có những phát biểu thêm mẩu tin vào bảng
SQL Server, tuy nhiên để tối ưu về tốc độ hay tính chuyên nghiệp trong SQL
Server, bạn cần sử dụng phát biểu INSERT.
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 11
Có thể sử dụng phát biểu này trên ứng dụng kết nối với SQL Server 2000
hay có thể tạo ra một Stored Procedure với mục đích INSERT dữ liệu vào bảng
chỉ định.
Cú pháp của phát biểu INSERT như sau:
INSERT INTO <Tên bảng> (Danh sách cột)
VALUES <Danh sách giá trị>
Ví dụ: Để chèn dữ liệu vào bảng tblChucvu ta có câu lệnh truy vấn sau:
INSERT INTO tblChucvu(MaCV, TenCV)
VALUES(‘01’,’trưởng Phòng)
3. Phát biểu cập nhật (UPDATE)
Phát biểu UPDATE dùng để cập nhật dữ liệu đã có trong bảng. Khi cập
nhật dữ liệu cho một mẩu tin nào đó thường UPDATE sử dụng chung với mệnh
đề WHERE.
Cú pháp của mệnh đề UPDATE như sau:
UPDATE FROM <Tên bảng>
SET <tên cột> = <Giá trị>
WHERE <Điều kiện>
Ví dụ muốn thay đổi tên tỉnh có mã số (‘01’) thành Bắc Giang ta dùng
câu truy vấn như sau:
UPDATE FROM tblTinh
SET tblTinh.Tentinh = ‘Bắc Giang’
WHERE tblTinh.MaTinh = ‘01’
4. Phát biểu xóa (DELETE)
Khi thực hiện xóa mẩu tin trong bảng chúng ta chỉ cần quan tâm đến tên
bảng và mệnh đề WHERE để mọc mẩu tin nếu có.
Cú pháp:
DELETE FROM <Tên bảng>
WHERE <Điều kiện>
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 12
Ví dụ : Để xóa tên tỉnh có tên là Bắc Giang ta là như sau:
DELETE FROM tblTinh
WHERE tblTinh.TenTinh = ‘Bắc Giang’
Trong trường hợp có ràng buộc về quan hệ dữ liệu, thì xoá mẩu tin phải
tuân thủ theo nguyên tắc: Xóa mẩu tin con trước rồi mới xóa mẩu tin cha.
Ngoài ra trong SQL Serverồcn có những phát biểu cho phép kết nối nhiều
bảng với nhau như: JOIN, INNER JOIN, LEFT IOIN, RIGHT JOIN, FULL
JOIN CROSS JOIN.
Ví dụ: Để xác định địa chỉ của nhân viên ta cần xác định Tỉnh, huyện, Xã
để là được điều đó ta thực hiện câu truy vấn sau:
CREATE VIEW dbo.vwDiachi
AS
SELECT
dbo.tblTinh.TenTinh,dbo.tblHuyen,dbo.tblXA.TenXa,
dbo.tblXa.Maxa
FROM dbo.tblHUYEN INNER JOIN
Dbo.tblTINH ON dbo.tblHUYEN.MaTinh =
dbo.tblTINH.MaTinh INNER JOIN
Dbo.tblXA ON dblHUYEN.MaHuyen = dbo.tblXA.MaHuyen.
Khi đã có VIEW địa chỉ rồi ta chỉ cần gọi câu truy vấn sau là sẽ có thông
tin về địa chỉ của nhân viên.
SELECT TenTinh, TenHuyen, TenXa
FROM vwDiachi
WHERE MaXa = @MaXa @MaXa là một biến được đưa vào để chọn
ra Xã cần tìm.
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 13
VII. KHÁI NIỆM VỀ ĐỐI TƯỢNG TRONG SQL VÀ CÁCH
TẠO CÁC ĐỐI TƯỢNG TRONG SQL SERVER
1. Tạo cơ sở dữ liệu (CREATE DATABASE)
Khi xây dựng cơ sở dữ liệu bạn bắt đầu từ mô hình cơ sở dữ liệu ERD,
hay từ một giai đoạn nào đó trong quá trình phân tích thiết kế. Để tạo cơ sở dữ
liệu trên SQL Server ta dùng một trong 3 phương phát sau:
 Database Creation Wizard.
 SQL Server Enterprise Manager.
 Câu Lệnh CREATE DATABASE.
Cú Pháp của câu lệnh CREATE DATE như sau:
CREATE DATABASE <database- name>
[ON [ PRIMARY]
([ Name = <’logical file name’> ,]
[ , SIZE = <Size in Megabyte or kiloByte>]
[ , MAXSIZE = <Size in MegaByte or KiloByte>]
[, FILEGROWTH = < No or KiloByte ׀ Percentage>] )]
[ LOG ON
(
[ name = <’Logical File name’> , ]
FileName = <’FileName’>
[ , SIZE = <Size in Megabyte or kiloByte> ]
[ , MAXSIZE = <Size in MegaByte or KiloByte>]
[ , FILEGROWTH = < No or KiloBytelPercentage>] ) ]
[ COLLATE <collation> ]
[ For load ׀ For Attch ]
Trong đó:
SVTH: Nguyễn Văn Tranh Lớp 40TH
Đồ án tốt nghiệp Trang 14
 ON: Định nghĩa nơi chứa dữ liệu và không gian chứa tập tin
Log.
 NAME: Định nghĩa tên cơ sở dữ liệu.
 FILENAME: Tên tập tin cơ sở dữ liệu trên đĩa cứng.
 SIZE: Cho biết dung lượng của cơ sở dữ liệu khi tạo chúng.
 MAXSIZE: Dung lượng lớn nhất, khi dung lượng cơ sở dữ
liệu tăng đến mức Maxsize thì dừng lại. Nếu khi dung lượng bằng Maxsize, các
chuyển tác có thể bị huỷ bỏ hay trả về lỗi không thể thực hiện được. Để tránh
điều này, người quản trị phải thường xuyên theo dõi quá trình tăng dung lượng
cơ sở dữ liệu theo thời gian.
 FILEGROWTH: Dung lượng khởi tạo cùng dung lượng tối
đa cho phép tăng trong quá trình thêm dữ liệu vào cơ sở dữ
liệu.
 LOG ON: Cho phép bạn quản lý những chuyển tác xảy ra
trong quá trình sử dụng cơ sở dữ liệu của SQL Serve
Dùng SQL Server Enterprise Managar để tạo một cơ sở dữ liệu mới, thực
hiện các bước như sau:
 Khởi động SQL Server Enterprise Managar.
 kết nối với SQL Server.
 mở rộng thư mục Database như sau:
 Nhấn nút chuột phải vào thư mục Database hoặc vào
khoảng trắng ở khung bên phải rồi chọn New Database từ menu ngữ cảnh.
SVTH: Nguyễn Văn Tranh Lớp 40TH

Không có nhận xét nào:

Đăng nhận xét