sqlserver怎麼建立儲存過程

時間 2021-06-03 00:51:40

1樓:168隨風

1、 建立語法

create proc | procedure pro_name[ [=預設值] [output],

[=預設值] [output],

....]as

sql_statements

2、 建立不帶引數儲存過程

--建立儲存過程

if (exists (select * from sys.objects where name = 'proc_get_student'))

drop proc proc_get_studentgocreate proc proc_get_studentasselect * from student;

--呼叫、執行儲存過程

exec proc_get_student;

2樓:

開啟sql

新建查詢管理器

在查詢管理器中寫如下**:

create procedure 【儲存過程名稱】as begin

/******(功能實現**)******/endgo

即可建立儲存過程

為了保證建立的資料庫準確性,在建立儲存過程前最好寫上 use 【資料庫名稱】,來宣告使用哪個資料庫

功能**可以是查詢語句,刪除語句,更新語句,插入語句,變數賦值等等等等

3樓:_慾哭嘸淚

1、自定義儲存過程是由使用者使用者自定義建立,並能完成某一特定功能,如:查詢使用者所需資料資訊的儲存過程。

這裡我們看看儲存過程的好處:

1)重複使用。儲存過程可以重複使用,從而可以減少資料庫開發人員的工作量。

2)提高效能。儲存過程在建立的時候就進行了編譯,將來使用的時候不用再重新編譯。一般的sql語句每執行一次就需要編譯一次,所以使用儲存過程提高了效率

3)減少網路流量。儲存過程位於伺服器上,呼叫的時候只需要傳遞儲存過程的名稱以及引數就可以了,因此降低了網路傳輸的資料量。

4)安全性。引數化的儲存過程可以防止sql注入式的攻擊,而且可以將grant、deny以及revoke許可權應用於儲存過程。

2、儲存過程建立的基本語法

create  proc[edure]  儲存過程名

@引數1  資料型別 = 預設值,

…… ,

@引數n  資料型別 output

assql語句

go,引數是可選的

,引數分為輸入引數、輸出引數

,輸入引數允許有預設值

建立一個簡單的儲存過程 userlogin

create procedure userlogin

@name varchar(20),

@password varchar(20)

asbegin

select * from userinfo where username=@name and userpass=@password

endgo

3、儲存過程的使用

該儲存過程對應的查詢sql語句為:

select * from userinfo where username='admin' and userpass='admin'

查詢結果:

---------------------

username  userpass

admin      admin

使用儲存過程userlogin實現以上效果如下:

exec userlogin admin,admin

--或這樣呼叫:

exec userlogin @name='admin',@password='admin'

查詢結果:

---------------------

username  userpass

admin      admin

在資料中呼叫儲存過程的方法有兩種(這裡exec與execute等效);

exec  過程名  引數值1,引數值2,....

或者exec 引數1=引數值1,引數2=引數值2....

4、刪除一個儲存過程,用drop,如下:

drop procedure userlogin

4樓:射手小小王

if exists

(select 1

from sysobjects

where name = 'deletetenews' and type = 'p')

drop procedure deletetenewsgocreate procedure deletetenews(@xwbm char(14), @typeid char(2) output, @picurl varchar(100) output)

asbegin

set nocount on;

select @typeid = s.typeid,@picurl = s.picurl

from tb_news s

where s.xwbm = @xwbm; --返回型別編碼重新生成js檔案

delete from tb_news

where xwbm = @xwbm;

set nocount off;

end*/

sqlserver裡儲存過程怎麼呼叫儲存過程

5樓:司馬鑄劍

在sql server資料庫的維護或者web開發中,有時需要在儲存過程或者作業等其他資料庫操作中呼叫其它的儲存過程,下面介紹其呼叫的方法

在sql server資料庫的維護或者web開發中,有時需要在儲存過程或者作業等其他資料庫操作中呼叫其它的儲存過程,下面介紹其呼叫的方法

一、sql server中呼叫不帶輸出引數的儲存過程

sql **

--儲存過程的定義

create procedure [sys].[sp_add_product]

(@m_viewcount int = 0

,@m_hotcount int = 0)as

go--儲存過程的呼叫

declare @m_viewcount int

declare @m_hotcount int

exec sp_add_product @m_viewcount,@m_hotcount

二、sql server中呼叫帶輸出引數的儲存過程

sql **

--定義儲存過程

create procedure [sys].[sp_add_product]

(@m_viewcount int = 0

,@m_hotcount int output

)--儲存過程的呼叫

declare @m_viewcount int =0

declare @m_hotcount int

exec dbo.sp_add_product @m_viewcount,@m_hotcount output

sqlserver怎麼建立儲存過程

sqlserver裡儲存過程怎麼呼叫儲存過程

司馬鑄劍 在sql server資料庫的維護或者web開發中,有時需要在儲存過程或者作業等其他資料庫操作中呼叫其它的儲存過程,下面介紹其呼叫的方法 在sql server資料庫的維護或者web開發中,有時需要在儲存過程或者作業等其他資料庫操作中呼叫其它的儲存過程,下面介紹其呼叫的方法 一 sql s...

怎麼查詢sqlserver中表的的儲存過程

封半年 你的意思是 怎樣檢視建立儲存過程的語句嗎?首先要知道 儲存過程名稱 用 sp helptext 儲存過程名 sp helptext 檢視名 sp help 表名 在sql server 語句離執行就可以看到還可以 找到該資料庫 可編譯性 儲存過程 找到儲存過程名稱 右擊 修改 就可以檢視了 ...

sql server的儲存過程的declare函式的使用?誰

前面的是引數,是呼叫這個儲存過程的時候從外部輸入進來的。declare 是宣告變數。 變數是在批處理或過程的主體中用 declare 語句宣告的,並用 set 或 select 語句賦值。遊標變數可使用此語句宣告,並可用於其他與遊標相關的語句。所有變數在宣告後均初始化為 null。transact ...