Tạo, thực thi, hiệu chỉnh, xĩa stored procedures

Một phần của tài liệu Bài giảng SQL SERVER tin chi) (Trang 85 - 87)

 Khi thực thi thủ tục, bạn phải cung cấp các giá trị của tham số của các thủ tục nếu cĩ. Một thủ tục cĩ thể được gọi thực thi hoặc tự động thực khi SQL Server khởi động. Gọi thực thi bằng từ khĩa EXECUTE.

 Khi cần thêm một thàm số (parameter) hoặc thay đổi một vài phần trong đoạn mã thì ta dùng lệnh ALTER để hiệu chỉnh.

 Xĩa một thủ tục dùng lệnh DROP

 Các thủ tục cĩ thể được tạo trước khi các đối tượng mà thủ tục tham chiếu, đặt tính này gọi là tính trì hỗn.

Tạo thủ tục

Cách 1: Dùng Enterprice Manager

R-Click tại Store procudure trong CSDL, chọn New Store procudure

Cách 2: Tạo Stored procedure Wizard

Tool Wizard, click vào DataBase, chọn Create Store Procedure Wizard

Cách 3: Bằng lệnh Create proceduce

CREATE PROC [ EDURE ]procedure_name[ ;number] [ { @parameter data_type} [ VARYING ] [ =default] [ OUTPUT ]

] [,...n] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE, ENCRYPTION } ] [ FOR REPLICATION ]

AS

sql_statement [ ...n]

[ VARYING ]: Chỉ dùng với biến Cursor

Ví dụ 1: Tạo thủ tục để liệt kê các order cĩ ngày giao hàng đã quá hạn theo yêu cầu

CREATE PROC dbo.overdueOrders – quá hạn AS

SELECT *

FROM dbo.orders

WHERE RequiredDate < GETDATE() and shippeddate is null

Kiểm tra sự tồn tại của Stored procedures

sp_helptext proc_name

Thực thi một Stored procedures

[ [ EXEC [ UTE ] ] {

[@return_status=]

{procedure_name[;number] |@procedure_name_var

}

[ [@parameter=] {value |@variable [ OUTPUT ] | [ DEFAULT ] ] [,...n]

[ WITH RECOMPILE ]

Đơn giản hơn

EXECUTE ProductName [ ;number][<parameter>[, …n][ OUTPUT ]]

Thực thi sp ngay khi SQL Server khởi động: Store procedure phải nằm ở CSDLMaster.

Cách 1:Dùng thủ tục Sp_procoptionđể gán thuộc tính tự động thực thi

USE Master

EXECute Sp_procoption [ @ProcName = ] 'procedure' , [ @OptionName = ] Startup

, [ @OptionValue = ] True

Ví dụ:

EXECute Sp_procoption dbo.overdueOrders Startup, True

Cách 2:DùngEnterprice Manager

R-Click tại tên thủ tục Properties Execute whenever SQL Server Start

Hiệu chỉnh một stored procedures

USE Northwind GO

ALTER PROC dbo.overdueOrders AS

SELECT CONVERT(CHAR(8), RequiredDate,1) RequiredDate, CONVERT(CHAR(8), orderDate,1) orderDate, orderId, Customerid, EmployeeID FROM dbo.orders

WHERE RequiredDate<GETDATE()and shippeddate is null

ORDER BY RequiredDate

Xĩa một stored procedures

DROP ProcedureName

Một phần của tài liệu Bài giảng SQL SERVER tin chi) (Trang 85 - 87)

Tải bản đầy đủ (PDF)

(99 trang)