亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > ASP > 正文

asp存儲過程的使用大全

2024-05-04 11:05:10
字體:
來源:轉載
供稿:網友

學習使用存儲過程是ASP程序員必須學習的課程之一,所有大型數據庫都支持存儲過程,今天這篇文章是錯新技術小編和大家分享的asp存儲過程的使用大全,一起進入下文了解一下吧!

1,調用沒有參數的存儲過程
<%
set conn=server.CreateObject("adodb.connection")
set cmd=server.CreateObject("adodb.command")
strconn="dsn=pubs;uid=sa;pwd"

conn.Open strconn
set cmd.ActiveConnection=conn

cmd.CommandText="{call nono}"

'set rs=cmc.exe 或者cmd.execute

set rs=cmd.Execute()

%>
2,一個輸入的參數的存儲過程
<%
set conn=server.CreateObject("adodb.connection")
set cmd=server.CreateObject("adodb.command")
strconn="dsn=pubs;uid=sa;pwd"

conn.Open strconn
set cmd.ActiveConnection=conn

cmd.CommandText="{call oneinput(?)}"
cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger ,adParamInput )
cmd("@aaa")=100

cmd.Execute()

%>
3,一個輸入參數和一個輸出的參數
<%
set conn=server.CreateObject("adodb.connection")
set cmd=server.CreateObject("adodb.command")
strconn="dsn=pubs;uid=sa;pwd"

conn.Open strconn
set cmd.ActiveConnection=conn

cmd.CommandText = "{call oneinout(?,?)}"
cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger,adParamInput)
cmd("@aaa")=10
cmd.Parameters.Append cmd.CreateParameter("@bbb",adInteger,adParamOutput)

cmd.Execute()

bbb=cmd("@bbb")
%>
4,一個輸入參數,一個輸出參數,和一個返回值
<%
set conn=server.CreateObject("adodb.connection")
set cmd=server.CreateObject("adodb.command")
strconn="dsn=pubs;uid=sa;pwd"

conn.Open strconn
set cmd.ActiveConnection=conn

cmd.CommandText="{?=call onereturn(?,?)}"

cmd.Parameters.Append cmd.CreateParameter("@return_value",adInteger,adParamReturnValue )
cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger,adParamInput )
cmd("@aaa")=10
cmd.Parameters.Append cmd.CreateParameter("@bbb",adInteger,adParamOutput)

cmd.Execute()

bbb=cmd("@bbb")
rrr=cmd("@return_value")
%>





如何在ASP中調用SQL存儲過程
www.lucky365.net 2002-2-7 吉祥365

<%set connection1 = Server.CreateObject("ADODB.Connection")
connection1.open ... '聯接
set command1=Server.CreateObject("ADODB.command")
set command1.activeconnection=connection1
command1.commandtype=4
command1.commandtext="sp_1" 'SP 名
command1.parameters(1)=... '參數值
command1.parameters(2)=...
set recordset1=command1.execute()
%>



ASP調用存儲過程的技巧


1、最簡單的如下

Dim objConn
Set objConn = Server.CreateObject("ADOBD.Connection")
objConn.Open Application("Connection_String")
'Call the stored procedure to increment a counter on the page
objConn.Execute "exec sp_AddHit"
沒有參數,沒有返回,沒有錯誤處理,就是這個了

2、帶參數的一種調用
objConn.Execute "exec sp_AddHit 'http://www.aspalliance.com', 1"
請注意分割參數,該方法也不返回記錄

3、返回記錄的
Dim objConn
Dim objRs
Set objConn = Server.CreateObject("ADOBD.Connection")
Set objRs = Server.CreateObject("ADOBD.Recordset")
objConn.Open Application("Connection_String")
'Call the stored procedure to increment a counter on the page
objRs.Open objConn, "exec sp_ListArticles '1/15/2001'"
'Loop through recordset and display each article
4、……
Dim objConn
Dim objCmd

'Instantiate objects
Set objConn = Server.CreateObject("ADODB.Connection")
set objCmd = Server.CreateObject("ADODB.Command")
conn.Open Application("ConnectionString")

With objCmd
.ActiveConnection = conn 'You can also just specify a connection string here
.CommandText = "sp_InsertArticle"
.CommandType = adCmdStoredProc 'Requires the adovbs.inc file or typelib meta tag

'Add Input Parameters
.Parameters.Append .CreateParameter("@columnist_id", adDouble, adParamInput, , columnist_id)
.Parameters.Append .CreateParameter("@url", adVarChar, adParamInput, 255, url)
.Parameters.Append .CreateParameter("@title", adVarChar, adParamInput, 99, url)
.Parameters.Append .CreateParameter("@description", adLongVarChar, _
adParamInput, 2147483647, description)

'Add Output Parameters
.Parameters.Append .CreateParameter("@link_id", adInteger, adParamOutput, , 0)

'Execute the function
'If not returning a recordset, use the adExecuteNoRecords parameter option
.Execute, , adExecuteNoRecords
link_id = .Parameters("@link_id")
End With

5、存儲過程的代碼
Create PROCEDURE dbo.sp_InsertArticle
(
@columnist_id int,
@url varchar(255),
@title varchar(99),
@description text
@link_id int OUTPUT
)
AS
BEGIN
INSERT INTO dbo.t_link (columnist_id,url,title,description)
VALUES (@columnist_id,@url,@title,@description)

SELECT @link_id = @@IDENTITY
END

ASP調用帶參數存儲過程的幾種方式

最近有很多的朋友問到調用存儲過程的問題,這里簡單介紹幾種ASP調用帶參數存儲過程的方法。

1 這也是最簡單的方法,兩個輸入參數,無返回值:
set connection = server.createobject("adodb.connection")
connection.open someDSN
Connection.Execute "procname varvalue1, varvalue2"

''將所有對象清為nothing,釋放資源
connection.close
set connection = nothing

2 如果要返回 Recordset 集:
set connection = server.createobject("adodb.connection")
connection.open someDSN
set rs = server.createobject("adodb.recordset")
rs.Open "Exec procname varvalue1, varvalue2",connection

''將所有對象清為nothing,釋放資源
rs.close
connection.close
set rs = nothing
set connection = nothing

3 以上兩種方法都不能有返回值,(Recordset除外),如果要得到返回值,需要用Command的方法。
首先說明,返回值有兩種。一種是在存儲過程中直接return一個值,就象C和VB的函數返回值那樣;另一種是可以返回多個值,存
儲這些值的變量名稱需要在調用參數中先行指定。
這個例子要處理多種參數,輸入參數,輸出參數,返回記錄集以及一個直接返回值(夠全了吧?)
存儲過程如下:

use pubs
GO

-- 建立存儲過程
create procedure sp_PubsTest

-- 定義三個參數變量,注意第三個,特別標記是用于輸出
@au_lname varchar (20),
@intID int,
@intIDOut int OUTPUT

AS

SELECT @intIDOut = @intID + 1

SELECT *
FROM authors
WHERE au_lname LIKE @au_lname + ''%''

--直接返回一個值
RETURN @intID + 2

調用該存儲過程的asp程序如下:

<%@ Language=VBScript %>
<%
Dim CmdSP
Dim adoRS
Dim adCmdSPStoredProc
Dim adParamReturnValue
Dim adParaminput
Dim adParamOutput
Dim adInteger
Dim iVal
Dim oVal
Dim adoField
Dim adVarChar

‘這些值在 VB 中是預定義常量,可以直接調用,但在 VBScript 中沒有預定義
adCmdSPStoredProc = 4
adParamReturnValue = 4
adParaminput = 1
adParamOutput = 2
adInteger = 3
adVarChar = 200

iVal = 5
oVal = 3

''建一個command對象
set CmdSP = Server.CreateObject("ADODB.Command")

''建立連結
CmdSP.ActiveConnection = "Driver={SQL Server};server=(local);Uid=sa;Pwd=;Database=Pubs"

''定義command 對象調用名稱
CmdSP.CommandText = "sp_PubsTest"

''設置command調用類型是存儲過程 (adCmdSPStoredProc = 4)
CmdSP.CommandType = adCmdSPStoredProc

''往command 對象中加參數
''定義存儲過程有直接返回值,并且是個整數,省缺值是4
CmdSP.Parameters.Append CmdSP.CreateParameter("RETURN_VALUE", adInteger, adParamReturnValue, 4)
''定義一個字符型輸入參數
CmdSP.Parameters.Append CmdSP.CreateParameter("@au_lname", adVarChar, adParaminput, 20, "M")
''定義一個整型輸入參數
CmdSP.Parameters.Append CmdSP.CreateParameter("@intID", adInteger, adParamInput, , iVal)
''定義一個整型輸出參數
CmdSP.Parameters.Append CmdSP.CreateParameter("@intIDOut", adInteger, adParamOutput, oVal)

''運行存儲過程,并得到返回記錄集
Set adoRS = CmdSP.Execute

''把每個記錄打印出來,其中的字段是虛擬的,可以不用管
While Not adoRS.EOF

for each adoField in adoRS.Fields
Response.Write adoField.Name & "=" & adoField.Value & "
" & vbCRLF
Next
Response.Write "
"
adoRS.MoveNext
Wend

''打印兩個輸出值:
Response.Write "

@intIDOut = “ & CmdSP.Parameters("@intIDOut").Value & "

"
Response.Write "

Return value = " & CmdSP.Parameters("RETURN_VALUE").Value & "

"

''大掃除
Set adoRS = nothing
Set CmdSP.ActiveConnection = nothing
Set CmdSP = nothing
%>

此外還有其他方式,稍微偏門一些,以后慢慢再說
本文參考了多篇文章,這里不一一列出。













在Asp中使用存儲過程

  為了提高Asp程序的效率,有時需要在Asp中使用使用Sql Server的存儲技術,下面簡單作一個介紹。

存儲過程的建立

  這里只簡單介紹如何在Sql Server的企業管理器中如何建立存儲過程:

(1)打開企業管理器Enterprise manager

(2)選擇服務器組(SQL Server Group)、服務器、數據庫(Database)以及相就的數據庫,鼠標右擊對應數據庫下的Stored Procdures項,在彈出的菜單中選擇New Stored Procedure,在Stored Procedures Properties中輸入建立存儲過程的語句。下面是一個例子:

  CREATE PROCEDURE proctest @mycola Char(10),@mycolb Char(10),@mycolc text  AS

  Insert into chatdata (mycola,mycolb,mycolc) values(@mycola,@mycolb,@mycolc)

在Sql Server的文檔中它的語法為:

  CREATE PROC[EDURE] procedure_name [;number]   [

  {@parameter data_type} [VARYING] [= default] [OUTPUT]   ]

  [,...n]  [WITH    {   RECOMPILE   | ENCRYPTION

  | RECOMPILE, ENCRYPTION   }  ]  [FOR REPLICATION]  AS

   sql_statement [...n]

  如果你對Sql語法不熟悉,可以使用Check Syntax來檢查語法。在上例中,表示建立存儲過程名為mycola,帶3個參數的存儲過過程,其中第一個參數mycola數據類型為char,寬度10;第2個參數數據類型為char,寬度為10,第3個參數數據類型為text,在這里使用的是Sql Server的數據類型。

  存儲過程建立后,下面就是如何在Asp程序中調用該存儲過程:在Asp中調用存儲過程 為了提高Asp程序的效率,有時需要在Asp中使用使用Sql Server的存儲技術,下面簡單作一個,在上面的增加參數的語句p.Append cm.CreateParameter("@mycolc",201,1,250)中,格式為:

p.Append cm.CreateParameter("參數名稱",類型,方向,大小)

參許參數值的類型的意義如下:

名稱值 整數值 功能

  adDBTimeStamp 135 日期時間數據類型

  adDecimal 14 十進制整數值

  adDouble 5 雙精度小數值

  adError 10 系統錯誤信息

AdGUID 72 全域性唯一識別字(Globally unique identifier)

adDispath 9 COM/OLE自動對象(Automation Object)

adInteger 3 4字節有符號整數

adIUnknown 13 COM/OLE對象

adLongVarBinary 205 大型2字節值

adLongVarChar 201 大型字符串值

adLongVarWChar 203 大型未編碼字符串

adNumeric 131 十進制整數值

adSingle 4 單精度浮點小數

adSmallInt 2 2字節有符號整數

adTinyInt 16 1字節有符號整數

adUnsignedBigInt 21 8字節無符號整數

adUnsignedInt 19 4字節無符號整數

adUnsignedSmallInt 18 2字節無符號整數

adUnsignedTinyInt 17 1字節無符號整數

adUserDefined 132 用戶自定義數據類型

adVariant 12 OLE對象

adVarBinary 204 雙字節字符變量值

adVarChar 200 字符變量值

advarchar 202 未編碼字符串變量值

adWchar 130 未編碼字符串

方向值的意義如下:

名稱值 整數值 功能

adParamInput 1 允許數據輸入至該參數當中

adParamOutput 2 允許數據輸出至該參數當中

adParamInputOutput 3 允許數據輸入、輸出至該參數當中

adparamReturnValue 4 允許從一子程序中返回數據至該參數當中
以上是錯新技術頻道小編為大家搜集的asp存儲過程的使用大全,希望對大家的學習有一定的幫助!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品国产色综合久久不卡98口| 亚洲精品成人久久电影| 亚洲美腿欧美激情另类| 日本精品一区二区三区在线| 性欧美激情精品| 精品视频久久久久久久| 国产a级全部精品| 亚洲成色777777在线观看影院| 国产精品久久久久久久av电影| 欧美性xxxx极品hd欧美风情| 国产欧美精品在线| 国产精品久久久久久久久男| 欧美电影在线免费观看网站| 国产精品爱啪在线线免费观看| 欧日韩不卡在线视频| 国产成人精品免高潮在线观看| 国内精品小视频| 91九色国产在线| 国产视频精品va久久久久久| 狠狠色狠色综合曰曰| 国产精品天天狠天天看| 2020欧美日韩在线视频| 日韩av免费在线观看| 91精品国产综合久久久久久蜜臀| 久久久亚洲网站| 日韩精品视频在线观看免费| 亚洲电影天堂av| 九九视频这里只有精品| 亚洲跨种族黑人xxx| 国产国产精品人在线视| 81精品国产乱码久久久久久| 精品国产一区二区三区久久久| 久久天天躁狠狠躁老女人| 97香蕉久久夜色精品国产| 欧美激情在线播放| 欧美日本在线视频中文字字幕| 欧美日韩国产综合视频在线观看中文| 久久天堂电影网| 黑人巨大精品欧美一区二区免费| 国产成人精彩在线视频九色| 亚洲免费精彩视频| 亚洲精品av在线播放| 久久久精品国产网站| 性欧美办公室18xxxxhd| 中文字幕亚洲精品| 中文字幕在线看视频国产欧美| 欧美亚洲国产精品| 国产精品入口尤物| 欧美成人合集magnet| 亚洲精品久久久久久下一站| 欧美一级在线播放| 日韩视频在线观看免费| 亚洲国产精品嫩草影院久久| 精品国产91乱高清在线观看| 国产日韩av在线播放| 色综合久久久久久中文网| 欧洲一区二区视频| 国产精品www网站| 亚洲欧洲国产精品| 午夜精品视频在线| 91精品国产亚洲| 青青草成人在线| 成人黄色影片在线| 91影视免费在线观看| 国产成人91久久精品| 色婷婷av一区二区三区在线观看| 热99精品里视频精品| 日韩电影中文字幕| 91亚洲国产精品| 91免费的视频在线播放| 日本一区二区在线播放| 日韩一区av在线| 57pao国产精品一区| 精品久久在线播放| 国产午夜精品理论片a级探花| 日本精品一区二区三区在线播放视频| 在线观看免费高清视频97| 亚洲色图18p| 欧美激情欧美狂野欧美精品| 丰满岳妇乱一区二区三区| 成人黄色在线免费| 亚洲成人免费在线视频| 亚洲精品中文字| 91沈先生在线观看| 国产女同一区二区| 久久国产精品99国产精| 欧美一级大片在线观看| 国产精品电影网| 精品二区三区线观看| 久久久久久综合网天天| 中文字幕日韩电影| 韩国v欧美v日本v亚洲| 一本色道久久88综合亚洲精品ⅰ| 国外视频精品毛片| 97精品国产aⅴ7777| 国产脚交av在线一区二区| 日韩av观看网址| 欧美国产日韩一区二区三区| 欧美不卡视频一区发布| 国产成人亚洲精品| 国产在线拍偷自揄拍精品| 成人日韩在线电影| 国产区精品视频| 91精品国产沙发| 丰满岳妇乱一区二区三区| 97色在线视频观看| 91精品国产91久久久久久不卡| 国内精品国产三级国产在线专| 日韩一级裸体免费视频| 91精品中国老女人| 91精品国产综合久久久久久久久| 亚洲欧美中文字幕在线一区| 最近2019年好看中文字幕视频| 97**国产露脸精品国产| 国产精品久久久久aaaa九色| 国产欧美精品一区二区| 国产欧美 在线欧美| 中文字幕一区二区精品| 欧美成人午夜激情在线| 日韩有码片在线观看| 亚洲欧洲av一区二区| 秋霞av国产精品一区| 日韩电影免费观看在线| 国产精品免费看久久久香蕉| 亚洲性xxxx| 97精品免费视频| 久久国产天堂福利天堂| 亚洲午夜性刺激影院| 久久久久久久激情视频| 国产精品福利在线观看网址| 亚洲成年人在线播放| 久久久久久这里只有精品| 亚洲欧美日韩一区在线| 亚洲资源在线看| 97碰碰碰免费色视频| 国产一区二区日韩| 中文字幕成人精品久久不卡| 日韩精品中文字幕视频在线| 上原亚衣av一区二区三区| 国产视频福利一区| 97视频人免费观看| 高清在线视频日韩欧美| 另类图片亚洲另类| 国产精品青青在线观看爽香蕉| 秋霞成人午夜鲁丝一区二区三区| 久久久久久97| 国产精品欧美在线| 国产精品第10页| 在线观看中文字幕亚洲| 欧美贵妇videos办公室| 成人黄色av免费在线观看| 欧美成人黑人xx视频免费观看| 亚洲香蕉成人av网站在线观看| 青青久久av北条麻妃海外网| 亚洲黄在线观看| 精品久久久国产| 国产精品自拍视频| 日韩在线视频国产| 亚洲另类图片色| 亚洲少妇激情视频| 国产日产久久高清欧美一区| 中文字幕精品—区二区| 亚洲石原莉奈一区二区在线观看| 久久久国产影院|