sql server 儲存過程

2021-10-06 09:11:22 字數 2473 閱讀 6056

一.定義

儲存過程是乙個預編譯的sql語句 ,編譯後可多次使用

二.優缺點

優勢:響應時間上來說有優勢,可以給我們帶來執行效率提高的好處,且使用儲存過程的系統更加穩定

缺點:維護性較差,相對於簡單sql,儲存過程並沒有什麼優勢,並且在進行除錯時比較困難

三.如何呼叫

可以用乙個「execute 儲存過程名 引數」命令來呼叫儲存過程。

四.儲存過程和觸發器的區別

觸發器與儲存過程的主要區別在於觸發器的執行方式。儲存過程必須有使用者、應用程式或者觸發器來顯示的呼叫並執行,而觸發器是當特定時間出現的時候,自動執行或者啟用的,與連線用資料庫中的使用者、或者應用程式無關。

五.舉例

--儲存過程的建立和呼叫

--系統自帶

--自定義的

--1.不帶引數的儲存的建立和呼叫

--建立儲存查詢資料

create

proc cp_select_book_byname

asselect

*from books

--呼叫

exec cp_select_book_byname

--修改

--alter proc 儲存過程名字

--刪除

--drop proc 儲存過程名字

--建立儲存根據名稱查詢資料

--2.帶輸入的儲存過程的建立和呼叫

gocreate

proc cp_select_book_byname2

(@name nvarchar(50)

)asselect

*from books where name like

'%'+

@name

+'%'

--呼叫

exec cp_select_book_byname2 'js'

--3.帶輸出引數的儲存過程的建立和呼叫

--根據名稱查詢,返回記錄,同時返回記錄數

gocreate

proc cp_select_books_byname3

(@name nvarchar(50)

,@recordrows

intout

--輸出型別)as

select

*from books where name like

'%'+

@name

+'%'

select

@recordrows

=count(*

)from books

--呼叫

--定義乙個變數,接收返回引數 @recordrows的值

declare

@rsint

exec cp_select_books_byname3 'js'

,@rs

outprint

'查詢的記錄數是:'

+convert

(varchar(50

),@rs)

--4.簡單的分頁的儲存過程的建立和呼叫

--根據名稱,頁碼,每頁顯示條數

gocreate

proc cp_select_book_byname4

(@name nvarchar(50)

,@pageindex

int,

--頁碼

@pagesize

int,

--每頁顯示條數

@rsint

out--總記錄數)as

select

top(

@pagesize)*

from books where id notin(

select

top(

@pagesize*(

@pageindex-1

)) id from books where name like

'%'+

@name

+'%'

order

by id)

and name like

'%'+

@name

+'%'

order

by id

select

@rs=

count(*

)from books where name like

'%'+

@name

+'%'

--呼叫

declare

@rows

intexec cp_select_book_byname4 '',1

,1,@rows

outprint

'總記錄數:'

+convert

(varchar(50

),@rows

)

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...

SQL Server 儲存過程

儲存過程概念 儲存過程優點 儲存過程的介面 儲存過程的解析 編譯過程 儲存過程安全性 檢視儲存過程 加密 解密儲存過程 儲存過程概念 儲存過程 stored procedure 是一組為了完成特定功能的sql語句集,經編譯後儲存在資料庫中。使用者通過指定儲存過程的名字並給出引數 帶參儲存過程 來執行...