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

Một phần của tài liệu Tài liệu TÀI LIỆU MICROSOFT SQL SERVER 2000 doc (Trang 107 - 109)

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

Ví dụ: EXECUTE dbo.overdueOrders

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

CSDL Master. (adsbygoogle = window.adsbygoogle || []).push({});

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ùng Enterprice 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 Tài liệu TÀI LIỆU MICROSOFT SQL SERVER 2000 doc (Trang 107 - 109)