我在SQL server2000中已經寫好的預存程序
需要輸入兩個參數
我要如何在ASP中呼叫這樣的參數
並且將搜尋出來的東西
列表出來呢?
能否給我完整的範例程式
2006-02-20 10:57:53 · 2 個解答 · 發問者 淺倉 4 in 電腦與網際網路 ➔ 程式設計
如果你的預存程序有傳回值,又有一個RecordSet
Create Procedure dbo.SumTwo
(@VAL1 int,@VAL2 int, @return int output)
As
set @return = @VAL1 + @VAL2
select * from Table where total = @return
Go
你還可以有另一種寫法,是用ADODB的Command物件
Set comm = Server.CreateObject("ADODB.Command")
sql = "SumTwo"
With comm
Set .ActiveConnection = Conn
.CommandText = sql
.CommandType = 4 '4 代表呼叫預存程序
End With
set param = comm.Parameters
param.Append comm.CreateParameter("VAL1", 3, 1) '3代表int, 如果是varchar用8
param.Append comm.CreateParameter("VAL2", 3, 1)'而最後面的參數1代表input, 2為output
param.Append comm.CreateParameter("return", 3, 2)
'注意你的參數宣告要按它在預存程序中的次序, 像VAL1後才是VAL2
comm("VAL1") = 1
comm("VAL2") = 5
set rs = comm.Execute()
return = comm("return")
這裡有比較完整的參考,你可以查到那些數字參數所代表的意思
http://www.devguru.com/technologies/ado/home.asp
2006-02-20 07:11:22 · answer #1 · answered by 傳加之楓 4 · 0⤊ 0⤋
假設您的 Store Procedure 如下
Create Procedure dbo.Getdata
@USERNAME varchr(30),@ID_NUMBER varchar(10)
As
Select * From USERDATA Where UNAME=@USERNAME And IDNUM=@ID_NUMBER
建立一個資料庫連線 conn
Dim adoRS
Dim SQLstmt
SQLstmt="Getdata 'Brues','A123456789' "
adoRS.Open SQLstmt,conn,3,1
2006-02-20 01:07:16 · answer #2 · answered by 憂鬱到不行 2 · 0⤊ 0⤋