在ASP中使用儲存過程

2021-04-01 23:37:51 字數 1714 閱讀 2793

學習使用儲存過程(stored procedure),是asp程式設計師的必須課之一。所有的大型資料庫都支援儲存過程,比如oracle、ms sql等,(但ms access不支援,不過,在access裡可以使用引數化的查詢)。

使用儲存過程有許多好處,它可以封裝複雜的資料邏輯,充分發揮大型資料庫本身的優勢。我們知道,asp並不適合做複雜的資料運算,而通過old db訪問資料庫,由於資料需要在asp和資料庫之間傳遞,相當消耗系統資源。事實上,如果資料庫僅僅起著資料儲存的作用,那麼它的功能是遠遠沒有得到利用的。

關於如何建立儲存過程,請參考ms sql的相關文件。

本文介紹儲存過程如何在asp中運用。

簡單的乙個sql語句:

select id,name,picture,time,duty from employ

我們可以建立乙個儲存過程:

create procedure sp_employ

asselect id,name,picture,time,duty from employ

go而sql語句:

select id,name,picture,time,duty from employ where id=10230

對應的儲存過程是:(用alter替換我們已有的儲存過程)

alter procedure sp_employ

@inid

int

asselect id,name,picture,time,duty from employ

where id=@inid

go下面對比一下sql和儲存過程在asp中的情況。首先看看直接執行sql的情況:

<%

dim conn, strsql, rs

set conn = server.createobject("adodb.connection")

conn.open

"dsn=webdata;uid=user;pwd=password"

strsql = " select id,name,picture,time,duty from employ "

set rs = conn.execute(strsql)

%>

再看看如何執行stored procedure:

<%

dim conn, strsql, rs

set conn = server.createobject("adodb.connection")

conn.open

"dsn=webdata;uid=user;pwd=password" 』make connection

strsql = "sp_employ"

set rs = conn.execute(strsql)

%>

而執行帶引數的stored procedure也是相當類似的:

<%

dim conn, strsql, rs, myint

myint = 1

set conn = server.createobject("adodb.connection")

conn.open

"dsn=webdata;uid=user;pwd=password"

strsql = "sp_mystoredprocedure " & myint

set rs = conn.execute(strsql)

%>

你可能覺得在asp中使用儲存過程原來是這樣的簡單。對!就是這麼簡單。

在ASP中使用儲存過程

學習使用儲存過程 stored procedure 是asp程式設計師的必須課之一。所有的大型資料庫都支援儲存過程,比如oracle ms sql等,但ms access不支援,不過,在access裡可以使用引數化的查詢 使用儲存過程有許多好處,它可以封裝複雜的資料邏輯,充分發揮大型資料庫本身的優勢...

在Asp中使用儲存過程

為了提高asp程式的效率,有時需要在asp中使用使用sql server的儲存技術,下面簡單作乙個介紹。儲存過程的建立 這裡只簡單介紹如何在sql server的企業管理器中如何建立儲存過程 開啟企業管理器enterprise manager 選擇伺服器組 sql server group 伺服器 ...

在ASP中使用儲存過程 轉

學習使用儲存過程 stored procedure 是asp程式設計師的必須課之一。所有的大型資料庫都支援儲存過程,比如oracle ms sql等,但ms access不支援,不過,在access裡可以使用引數化的查詢 使用儲存過程有許多好處,它可以封裝複雜的資料邏輯,充分發揮大型資料庫本身的優勢...