Iomar

New Member

Download miễn phí Bài giảng SQL server 2000: Thủ tục thường trú - Stored Procedures





Tham sốtrong thủtục thường trú
Khi sửdụng tham sốtrong thủtục thường trú,
chúng ta phải qua. Đểkhai báo một tham số,
chúng ta cần quan tâm đến các yếu tốsau:
–Tên tham số
–Kiểu dữliệu
–Giátrịmặc nhiên nếu có
–Cóhay không chỉdẫn OUTPUT



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

Nguyễn Trong Anh
E-Mail: [email protected]
[email protected]
Home:
Thủ tục thường trú
STORED PROCEDURES
1-2SQL server 2000 – Transact SQL
Thủ tục thường trú
Là tập hợp các T-SQL được lưu trữ trong tên,
được thực hiện như một đối tượng riêng biệt
1-3SQL server 2000 – Transact SQL
Ưu điểm
Tăng tốc độ thực hiện
Giảm lưu lượng dao dịch trên mạng
Toàn vẹn dự liệu tăng
Bảo mật tốt hơn
1-4SQL server 2000 – Transact SQL
Dạng của Thủ tục thường trú
–Người dùng định nghĩa (user – define)
–Hệ thống (system)
–Tạm thời (temporary)
–Tách biệt (remote)
–Mở rộng (Extended)
1-5SQL server 2000 – Transact SQL
Thủ tục thường trú
Stored Procedure
•Khái niệm cơ bản về thủ tục thường trú
•Thay đổi và xoá một thủ tục thường trú
•Tham số và khai báo biến
•Phát biểu có cấu trúc
•Một số thủ tục thường trú cơ bản
•Một số thủ tục thường trú của hệ thống
1-6SQL server 2000 – Transact SQL
Khái niệm
Thủ tục thường trú là một đối tượng xây dựng bởi
những phát biểu của SQL server và T-SQL
Thủ tục thường trú được lưu trữ như một phần
của cơ sở dữ liệu.
Cấu trúc như là văn bản Text, mỗi khi thực hiện
chỉ cần gọi tương tự như thủ tục hay hàm trong
các ngôn ngữ lập trình
1-7SQL server 2000 – Transact SQL
Cú pháp để tạo
thủ tục thường trú
CREATE PROCEDURE ten_thutuc
[],
[]
AS
BEGIN
caulenh_sql1
caulenh_sql2
END
1-8SQL server 2000 – Transact SQL
Xác định các thông tin cần thiết
để tạo thủ tục thường trú
Nơi tạo thủ tục thường trú: Cơ sở dữ liệu
NorthWind
Kiểu của thủ tục thường trú: user-defined
Tên của thủ tục thường trú: sp_Hienthi
1-9SQL server 2000 – Transact SQL
Nội dung của thủ tục
sp_hienthi
Create procedure sp_hienthi
As
Begin
select * from customers where customerID like
'%A‘
End
1-10SQL server 2000 – Transact SQL
Xem nội dung của thủ tục
thường trú
Sp_helptext sp_hienthi
Nội dung của thủ tục sẽ được hiển thị như hình vẽ
dưới đây:
1-11SQL server 2000 – Transact SQL
Gọi thủ tục thường trú
Câu lệnh EXECUTE PROCEDURE thường được
dùng để gọi thủ tục thường trú
Cú pháp:
EXECUTE ten_thutuc
hoặc
EXEC ten_thutuc
hoặc
ten_thutuc
1-12SQL server 2000 – Transact SQL
Tham số trong thủ tục thường trú
Khi thực hiện một thủ tục thường trú, chúng ta có
thể truyền tham số để thông báo cho thủ tục
thường trú
Có hai loại tham số
–Input parameter
–Output parameter
1-13SQL server 2000 – Transact SQL
Tham số trong thủ tục thường trú
Khi sử dụng tham số trong thủ tục thường trú,
chúng ta phải qua. Để khai báo một tham số,
chúng ta cần quan tâm đến các yếu tố sau:
–Tên tham số
–Kiểu dữ liệu
–Giá trị mặc nhiên nếu có
–Có hay không chỉ dẫn OUTPUT
1-14SQL server 2000 – Transact SQL
Tham số trong thủ tục thường trú
(Khai báo tham số)
Cú pháp:
@ten_thamso [AS] kiểudữliệu
Ví dụ khai báo tham số
@SoDienThoai varchar(20),
@Diachi AS varchar(50)
Khi có nhiều tham số chúng ta sử dụng dấu (,) để
phân cách các tham số
1-15SQL server 2000 – Transact SQL
Tham số trong thủ tục thường trú
(Khai báo tham số trong thủ tục)
Create procedure sp_hienthiTS
@Val Varchar(20)
as
Begin
select * from customers where customerID like
'%' + @Val
End
1-16SQL server 2000 – Transact SQL
Tham số trong thủ tục thường trú
(Gọi thủ tục với tham số)
Xem nội dung thủ tục
Sp_helptext sp_hienthi
Gọi thủ tục
Sp_thutuc ‘A’
Ý nghĩa: Hiển thị thông tin của khách hàng. Với
điều kiện CustomerID có ký tự A
1-17SQL server 2000 – Transact SQL
Tham số trong thủ tục thường trú
(Khai báo tham số trong thủ tục)
Những tham số được truyền từ bên ngoài vào thủ
tục. Các tham số có thể lấy giá trị truyền vào tư
ngôn ngữ lập trình. Ví dụ như: Visual Basic,
Visual Basic.Net, C# …
Giá trị truyền vào phải đúng thứ tự như đã khai
báo. Nếu giá trị truyền vào không tương thích với
kiểu dữ liệu đã được khai báo. Lỗi sảy ra Î
Không chạy được thủ tục
1-18SQL server 2000 – Transact SQL
Xây dựng thủ tục với các giá trị
mặc định
Khi khai báo tham số trong thủ tục thường trú,
nếu cần chúng ta có thể khởi tạo giá trị mặc nhiên
cho tham số.
Khi gọi thủ tục có gán giá trị ngẫu nhiên, nếu
người sử dụng không cung cấp giá trị. Nó sẽ lấy
giá trị mặc định được định nghĩa trước đó.
1-19SQL server 2000 – Transact SQL
Tạo thủ thục tham số với giá
trị mặc định
CREATE procedure sp_InsertShipper
@company Varchar(20) = 'N/A',
@Phone Varchar(20) = 'N/A'
AS
Begin
Insert Into Shippers(CompanyName,Phone)
Values(@company, @phone)
End
GO
1-20SQL server 2000 – Transact SQL
Tạo thủ thục tham số với giá
trị mặc định
Thủ tục trên thêm mới 1 bản ghi vào bảng Shippers
Nếu có giá trị truyền vào. Thủ tục sẽ lấy các giá trị
được truyền vào.
Giá trị truyền vào khi gọi tham số cho companyName
và Phone sẽ được lấy mặc định nếu là rỗng
1-21SQL server 2000 – Transact SQL
Kiểm tra kết quả của thủ tục
Chúng ta chạy Thủ tục trên với các tham số dưới
đây:
sp_InsertShipper
sp_InsertShipper ‘Dai Học Thang Long’
sp_InsertShipper ‘DH Thang Long’, ‘858 789 989’
1-22SQL server 2000 – Transact SQL
Thay đổi thủ tục thường trú
Những lưu ý khi thay đổi nội dung của Thủ tục
thường trú
•Thủ tục đó phải tồn tại.
•tuỳ từng trường hợp vào quyền hạn của người dùng đó có
thể thay đổi thủ tục thường trú hay không.
•Kiểm tra tất cả các thông tin có liên quan đến
các đối tượng khác trong khi bị thay đổi.
1-23SQL server 2000 – Transact SQL
Thủ tục thường trú với tham số
(Tham số Output)
Lấy giá trị Output:
•Khi chúng ta cần xuất giá trị ra ngoài khi thủ tục
thường trú thực thi xong.
•Sử dụng kết quả của thủ tục thường trú làm giá
giá trị tham số đầu vào cho một thủ tục thường
trú khác.
1-24SQL server 2000 – Transact SQL
Thủ tục thường trú với tham số
(Tham số Output)
CREATE procedure sp_InsertShipper1
@company Varchar(20) = 'N/A',
@Phone Varchar(20) = 'N/A',
@outPhone int OutPut
AS
Begin
Insert Into Shippers(CompanyName,Phone)
Values(@company, @phone)
select @outPhone = @@IDentity
End
GO
1-25SQL server 2000 – Transact SQL
Thủ tục thường trú với tham số
(Lấy thông tin từ Tham số Output)
declare @MyID int
exec sp_InsertShipper1 'Test1','Test2', @MyID
OutPut
select @myID as SoMauTin
select * from shippers where ShipperID = @myID
1-26SQL server 2000 – Transact SQL
Thủ tục thường trú với tham số
(Nhiều Tham số Output)
CREATE PROCEDURE prcGetInfoShippers
@ShipperID int,
@Phone varchar(20) OUTPUT,
@company varchar(20) OUTPUT
AS
BEGIN
SELECT
@Phone = Phone,
@company = CompanyName
FROM Shippers
WHERE ShipperID = @ShipperID
END
1-27SQL server 2000 – Transact SQL
Thủ tục thường trú với tham số
(lấy thông tin từ thủ tục nhiều Tham số Output)
Khai báo biến
Declare @Phone Varchar(20)
Declare @Company Varchar(20)
Gọi Thủ tục
Exec prcGetInfoShippers 1, @Phone Output,
@Company Output
In kết quả
Select @Phone as Phone, @Company as
Company
1-28SQL server 2000 – Transact SQL
Những câu lệnh
điều khiển
1-29SQL server 2000 – Transact SQL
Những câu lệnh điều khiển
Bất kỳ ngôn ngữ lập trình nào hiện nay đều có
những phát biểu điều khiển.
SQL Server 2000 cũng giống như ngôn ngữ lập
trình.
Chúng ta tìm hiểu các cú pháp thông dụng như:
–IF … ELSE
–GOTO
–WHILE
–WAITFOR
1-30SQL server 2000 – Transact SQL
Những câu lệnh điều khiển (2)
Bên cạnh đó còn có các câu lệnh điều khiển như:...
 

Các chủ đề có liên quan khác

Top