儲存過程入門

2021-04-21 07:27:50 字數 1920 閱讀 5433

1.寫第乙個儲存過程

create proc query_table

as select * from mytable

go2.在查詢分析器裡執行儲存過程

exec query_book

3.寫個帶引數的儲存過程

create procedure [dbo].[query_param]

(@id int)as

select * from a

go執行方法

exec query_param @id=1

4.帶多個引數的執行

exec query_param @id=1,@name=2

5.儲存過程中begin/end的用法

create proc query_table

as begin

select * from a --儲存過程中begin/end的用法

select * from b --返回不至乙個表。

endgo

6output/input

create proc query_table

@dd int output

as begin

select @dd=count(*) from a

endgo

儲存過程除了返回查詢結果以外可以返回一些值,這些值就是由這些標示為output的引數傳遞出去的。

預設的都是input型別,output型可以通過c#**語句取得。

7.在查詢分析器裡得到輸出引數。

declare @a int

exec query_table @a out --在這裡把輸出引數賦給a,然後查詢出來。

select @a

3.常用語法

rtrim(@ygdm)--去除空格

if(rtrim(@bmdm)='')

begin

set @bmdm=(select min(bmdm) from p_bmdm)

endelse

begin

end4.引數賦值的方法是set

create proc query_table

@dd int output,

@aa int output

as begin

set @aa=27

select @dd=count(*) from a

endgo

執行declare @a int,@b int

exec query_table @a out,@b out

select @a,@b

3.常用語法

rtrim(@ygdm)--去除空格

@num=len(1111)--返回值為4

set @aa=left('27222222',3)--從左取前三個字元

space(10)空格

case v when 0 then aa=0 else aa=1

convert(decimal(5,2),0.00)

4.常用方式

create proc insert_table

as begin

insert into a (s1) (select s2 from b)

endgo

insert into ls_bmcx (bmdm,zs,rybz,bmmc,ygdm)(select a.*,b.bmmc,@ygdm as ygdm from #lsb01 a inner join p_bmdm b on a.bmdm=b.bmdm)

5.連線查詢用法

inner join

left join

6.#臨時表

儲存過程入門

create procedure procedue name parameter data type output with assql statement 解釋 output 表示此引數是可傳回的.with recompile 表示每次執行此儲存過程時都重新編譯一次 encryption 所建立的...

儲存過程入門

本文參考 oracle database concepts guide 11g2 by thomas kyte stored procedure wiki 什麼是儲存過程 stored procedure 儲存在資料庫 儲存過程的好處 開發維護的效率提公升 資料完整性與一致性 安全性 儲存也可以以呼...

SQL儲存過程入門

sql儲存過程入門 一 sql儲存過程的概念,優點及語法整理在學習程式過程之前,先了解下什麼是儲存過程?為什麼要用儲存過程,他有那些優點 定義 將常用的或很複雜的工作,預先用sql語句寫好並用乙個指定的名稱儲存起來,那麼以後要叫資料庫提供與已定義好的儲存過程的功能相同的服務時,只需呼叫execute...