Sql Server使用儲存過程

2021-08-26 16:17:51 字數 2480 閱讀 5766

1 儲存過程基本語句①

connect to studenttest;

select * from tbl_classinfo

--建立儲存過程

create procedure proc_demo()

begin

declare v_i int default 10;

declare v_classname varchar(20);

set v_classname='德語';

insert into tbl_classinfo values('007',v_classname);

end@

--執行儲存過程

call proc_demo

--刪除儲存過程

drop procedure proc_demo

2 儲存過程基本語句②

connect to bookshop

select * from tbl_publisher

--建立儲存過程

create procedure proc_publisher()

begin

declare v_pubid num(10);

declare v_name varchar(23);

declare v_contact varchar(15);

declare v_phone varchar(12);

set v_pubid=100;

set v_name='xy出版社';

set v_contact='111';

set v_phone='111';

insert into tbl_publisher values(v_pubid,v_name,v_contact,v_phone);

end@

--執行儲存過程

call proc_publisher()

--刪除儲存過程

drop procedure proc_publisher;

3 輸入引數

connect to studenttest;

select * from tbl_classinfo;

select * from tbl_result;

create table tbl_result

(result varchar(100)

)--建立儲存過程

create procedure pro_classinfo(in v_classno character(2), in v_classname varchar(10))

begin

insert into tbl_classinfo values(v_classno,v_classname);

end@

create procedure pro_modifybyclassno(in v_classno character(2))

begin

for classfor as select classname from tbl_classinfo where classno=v_classno

doinsert into tbl_result values(classfor.classname);

end for;

end@

--執行儲存過程

call pro_classinfo('10','體育')

call pro_modifybyclassno('10');

--刪除儲存過程

drop procedure pro_classinfo

drop procedure pro_modifybyclassno

4 輸出引數

select * from tbl_result;

create table tbl_result

(result varchar(100)

)create procedure proc_out(out v_classname varchar(10),in v_classno character(2))

begin

for classfor as select classname from tbl_classinfo where classno=v_classno

doset v_classname = classfor.classname;

end for;

end@

用另乙個儲存過程使用輸出引數

create procedure pro_test()

begin

declare v_classname varchar(10);

call proc_out(v_classname,'10');

insert into tbl_result values(v_classname);

end@

call pro_test();

SqlServer 儲存過程使用

優勢 1 提高效能 sql語句在建立過程時進行分析和編譯。儲存過程是預編譯的,在首次執行乙個儲存過程時,查詢優化器對其進行分析 優化,並給出最終被存在系統表中的儲存計畫,這樣,在執行過程時便可節省此開銷。2 降低網路開銷 儲存過程呼叫時只需用提供儲存過程名和必要的引數資訊,從而可降低網路的流量。3 ...

sql server儲存過程

建立表的語句 create table student sno int primary key,sname nvarchar 30 sgentle nvarchar 2 sage int,sbirth smalldatetime,sdept nvarchar 30 drop table studen...

SQLSERVER儲存過程

sqlserver儲存過程使用說明書 引言首先介紹一下什麼是儲存過程 儲存過程就是將常用的或很複雜的工作,預先用 sql語句寫好並用乙個指定的名稱儲存起來,並且這樣的語句是放在資料庫中的,還可以根據條件執行不同 sql語句,那麼以後要叫資料庫提供與已定義好的儲存過程的功能相同的服務時,只需呼叫 ex...