首頁  >  文章  >  php教程  >  sql預存程序幾個簡單例子

sql預存程序幾個簡單例子

高洛峰
高洛峰原創
2016-12-14 13:42:171715瀏覽

導讀:sql儲存是資料庫操作過程中比較重要的一個環節,對於一些初學者來說也是比較抽象難理解的,本文我將透過幾個實例來解析資料庫中的sql預存程序,這樣就將抽象的事物形象化,比較容易理解。

例1:

create proc proc_stu 
@sname varchar(20), 
@pwd varchar(20) 
as 
select * from ren where sname=sname and
as 

select * from ren where sname=sname and

as 

select * from ren 'admin','admin'

例2:

下面的預存程序實現用戶驗證的功能,如果不成功,回傳0,成功則回傳1.


CREATE PROCEDURE VALIDATE @USERNAME CHAR(20),@PASSWORDORD CHAR(20),@LEGAL BIT OUTPUT 

AS


IF EXISTS(SELECT * FROM REN WHERE SNAME = @USERNAME AND PWD = @PASSWORD) 
SELECT @LEGAL = 1130 月呼叫該預存程序,並根據@LEGAL參數的值判斷使用者是否合法。

例3:一個高效的資料分頁的儲存過程可以輕鬆應付百萬資料

CREATE PROCEDURE pageTest --用於翻頁的測試
--需要把排序欄位放在第一列

(
@FirstID nvarchar(20)=null, --目前頁面裡的第一筆記錄的排序欄位的值

@LastID nvarchar(20)=null, --目前頁面裡的最後一筆記錄的排序欄位的值

@isNext bit=null, --true 1 :下一頁;false 0:上一頁
@allCount int output, --傳回總記錄數
@pageSize int output, --傳回一頁的記錄數
@CurPage int --頁號(第幾頁)0:第一頁;-1最後一頁。 select @allCount=count(ProductId) from Product_test 

set @pageSize=10
--傳回第一頁的資料
select top 10 

ProductId,

ProorderctName,$ else if @CurPage=-1--表示最後一頁

select * from 
(select top 10 ProductId,
ProductName,
Introduction

from Product_test order by Product1 descbeas
if @isNext=1
--翻到下一頁
select top 10 ProductId,
ProductName,
Introduction
from Product_test where ProductId > @LastID order by ProductId 
select top 10 ProductId,

ProductName,

Introduction

from Product_test where ProductId end
,希望大家好好學習,都能夠學到大家各自需要的東西。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn