1.執行儲存過程
要執行某個儲存過程,只要簡單地通過名字就可以引用它。如果對儲存過程的呼叫不是批處理中的第一條語句,則需要使用execute關鍵字。下面是執行儲存過程的語法格式。
[[exec[ute]]]
[[@parameter=]
[varying][=default][output]][,...n]
[with ]
[for replication]
as sql_statement[,...n]
其中的引數和保留字的含義與create procedure語句中的相似。
舉例:使用alter procedure 語句更改儲存過程。
①建立儲存過程employee_dep,以獲取總經理辦的男員工。
create procedure employee_dep as
select employee_name,***,address,department_name
from employee e inner join department d
on e.department_id=d.department_id
where ***='男'and e.department_id='d001'
go執行儲存過程employee_dep,結果如下
執行結果
employee_name
***address
department_name
1錢大理
男東風路79號
銷售部2
東方牧男
五一北路24號
銷售部②用select語句查詢系統表sysobjects和syscomments,檢視employee-dep儲存過程的文字資訊的**如下:
select o.id,c.text
from sysobjects o inner join syscomments c on o.id=c.id
where o.type='p' and o.name='employee_dep'
go ③使用alter procedure 語句對employee_dep過程進行修改,使其能夠顯示出所有男員工,並使employee_dep過程以加密方式儲存在表syscomments中,其**如下:
alter procedure employee_dep
with encryption
select employee_name,***,address,department_name
from employee e inner join department d
on e.department_id=d.department_id
where ***='男'
go執行修改後的儲存過程employee_dep,結果如下表所示。
修改後employee_dep儲存過程的執行結果
employee_name
***address
department_name
1錢大理
男東風路29號
銷售部2
郭文斌男
五一北路25號
市場部這是由於在alter procedure 語句中使用with encryption 關鍵字對儲存過程employee_dep文字進行了加密,其文字資訊顯示為null。
也可以使用系統儲存過程sp_helptext顯示儲存過程的定義(儲存在syscomments系統表內),其命令如下:sp_helptext employee_dep
結果為「物件『employee_dep』的文字已加密「。
加密後儲存過程的執行結果 id
text
1837578022
null
修改儲存過程
修改儲存過程 alter procedure owner procedure name procedure definition procedure definition 請參見create procedure 語句。alter procedure owner procedure name set ...
執行儲存過程
sql server 2012 其他版本 3 共 3 對本文的評價是有幫助 評價此主題 本主題介紹如何使用 sql server management studio 或 transact sql 在 sql server 2012 中執行儲存過程。有兩種不同方法執行儲存過程。第一種方法和最常見的方法...
Mysql修改儲存過程
alter procedure 儲存過程名 特徵 指定了儲存過程的特性,可能的取值有 contains sql 表示子程式包含 sql 語句,但不包含讀或寫資料的語句。no sql 表示子程式中不包含 sql 語句。reads sql data 表示子程式中包含讀資料的語句。modifies sql...