當前位置:首頁 » 存儲配置 » 調用參數存儲過程

調用參數存儲過程

發布時間: 2023-03-24 12:22:34

A. sql資料庫中怎樣調用帶參數的存儲過程

1、使用SQL語句

--a)方式一
--exec存儲過程名稱參數名='值'
execP_Titles_ByType@type='business'
go
--b)方式二
--exec存儲過程名稱參數值
execP_Titles_ByType'business'



2、可視化操作

a.在資料庫中找到要執行的存儲過程

b.右擊存儲過程,在出現的菜單中選擇執行存儲過程選項

c.在新出現的對話框中,在對應的參數後面的值列填入對應的參數值

d.填寫完參數值,最後點擊確定,然後查詢結果會出現


圖-b

B. 如何用VB6調用帶參數帶輸出的存儲過程

分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:

有這么這存儲過程。我在VB6裡面該如何調用?

CREATE PROCEDURE Valid(

@CustName varchar(100),

@date varchar(10),

@OUT varchar(5) OUTPUT

)

AS

IF exists(select 1 from ServiceFee

where fee_CustName=@CustName

and (Year(@date) Beeen fee_BeginDate And fee_EndDate)

)

SELECT @OUT='TRUE'

ELSE

SELECT @OUT='FALSE'

GO

解析:

追加參數法調用存儲過程

追加參數通過CreateParameter方法,用來指定屬性創建新的Parameter對象。具體語法如下:

Set parameter = mand.CreateParameter (Name, Type, Direction, Size, Value)

·Name 可選,字元串,代表 Parameter 對象名稱。

·Type 可選,長整型值,指定 Parameter 對象數據類型。

·Direction 可選,長整型值,指定 Parameter 對象類型。

·Size 可選,長整型值,指定參數值最大長度(以字元或位元組數為單位)。

·Value 可選,租好變體型,指定 Parameter 對象值。

這種方法與上面一種方法的分別主要在於,追加參數的方法在向存儲過程傳遞參數時,這種方法首先通過CreateParameter方法為存儲過程創建參數,然後通過Append方法將創建的參數追弊差鉛加到Parameters *** 中去。

仍然以存儲過慶嫌程doc_ProcName的調用為例,關鍵代碼如下:

Dim mRst As ADODB.Recordset 'Recordset 對象表示的是來自基本表或命令執行結果的記錄全集。

Dim prm As ADODB.Parameter 'Parameter 對象代表參數或與基於參數化查詢或存儲過程的Command 對象相關聯的參數。

adoconn.ConnectionString = Adodc1.ConnectionString

adoconn.Open

Set adom.ActiveConnection = adoconn

adom.CommandText = "doc_ProcName"

adom.CommandType = adCmdStoredProc

Set prm = adom.CreateParameter("parameter1", adTinyInt, adParamInput, , "1")

adom.Parameters.Append prm

Set prm = adom.CreateParameter("parameter2", adInteger, adParamOutput)

adom.Parameters.Append prm

Set mRst = adom.Execute

ReturnValue = adom.Parameters(0)

C. 觸發器怎麼調用帶參存儲過程

觸發器調用帶參存儲過程如下:
1、當向表unit插入的數據後,且objectid>10000時,向表test_tab插入數據。
2、存儲過程:向表test插入調用存儲時的參數。

D. 在C#中怎麼調用帶參數的存儲過程啊

1)執行一個沒有配攜參數的存儲過程的代碼如下:
SqlConnection conn=new SqlConnection(「connectionString」);
SqlDataAdapter da = new SqlDataAdapter();
da.selectCommand = new SqlCommand();
da.selectCommand.Connection = conn;
da.selectCommand.CommandText = "NameOfProcere";
da.selectCommand.CommandType = CommandType.StoredProcere;
(2)執行一個有參數培搏伏的存儲過程的代碼如下
SqlConnection conn=new SqlConnection(「connectionString」);
SqlDataAdapter da = new SqlDataAdapter();
da.selectCommand = new SqlCommand();
da.selectCommand.Connection = conn;
da.selectCommand.CommandText = "NameOfProcere";
da.selectCommand.CommandType = CommandType.StoredProcere;
param = new SqlParameter("@ParameterName", SqlDbType.DateTime);
param.Direction = ParameterDirection.Input;
param.Value = Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
若需要添加輸出參數:
param = new SqlParameter("@ParameterName"銀滑, SqlDbType.DateTime);
param.Direction = ParameterDirection.Output;
param.Value = Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
若要獲得參儲過程的返回值:
param = new SqlParameter("@ParameterName", SqlDbType.DateTime);
param.Direction = ParameterDirection.ReturnValue;

E. 如何用VB6調用帶參數帶輸出的存儲過程

追加參數法調用存儲過程
追加參數通過CreateParameter方法,
用來指定屬性創建新的Parameter對象。具體語法如下:
Set
parameter
=
command.CreateParameter
(Name,
Type,
Direction,
Size,
Value)
·Name
可選,字元串,代表
Parameter
對象名稱。
·Type
可選,長整型值,指定
Parameter
對象數據類型。
·Direction
可選,長整型值,指定
Parameter
對象類型。
·Size
可選,長整型值,指定參數值最大長度(以字元或位元組數為單位)。
·Value
可選,變體型,指定
Parameter
對象值。
這種方法與上面一種方法的分別主要在於,
追加參數的方法在向存儲過程傳遞參數時,
這種方法首先通過CreateParameter方法為存儲過程創建參數,
然後通過Append方法將創建的參數追加到Parameter
s集合中去。
仍然以存儲過程doc_ProcName的調用為例,
關鍵代碼如下:
Dim
mRst
As
ADODB.Recordset
'Recordset
對象表示的是來自基本表或命令執行結果的記錄全集。
Dim
prm
As
ADODB.Parameter
'Parameter
對象代表參數或與基於參數化查詢或存儲過程的Command
對象相關聯的參數。
adoconn.ConnectionString
=
Adodc1.ConnectionString
adoconn.Open
Set
adocomm.ActiveConnection
=
adoconn
adocomm.CommandText
=
doc_ProcName
adocomm.CommandType
=
adCmdStoredProc
Set
prm
=
adocomm.CreateParameter(
parameter1,
adTinyInt,
adParamInput,
,
1)
adocomm.Parameters.Append
prm
Set
prm
=
adocomm.CreateParameter(
parameter2,
adInteger,
adParamOutput)
adocomm.Parameters.Append
prm

F. SQL存儲過程如何調用存儲過程

1、首先先創建一個存儲過程,代碼如圖,存儲過程主要的功能是為表JingYan插入新的數據。

G. 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 procere 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 & "<br>" & vbCRLF
Next
Response.Write "<br>"
adoRS.MoveNext
Wend

''列印兩個輸出值:
Response.Write "<p>@intIDOut = 「 & CmdSP.Parameters("@intIDOut").Value & "</p>"
Response.Write "<p>Return value = " & CmdSP.Parameters("RETURN_VALUE").Value & "</p>"

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

------------------------------------------------------------------------------------------------------------------------------------

在asp中調用sql server的存儲過程可以加快程序運行速度

1.調用存儲過程的一般方法
先假設在sql server中有一存儲過程dt_users:
CREATE PROCEDURE [dbo].[dt_users]
AS
select * from users
return
GO
第一種方法是不利用command對象,直接用recordset對象
set rs=server.createobject("adodb.recordset")
sql="exec dt_users"
rs.open sql,conn,1,1 這樣就可
第二種方法是利用command對象
set comm=server.createobject("adodb.command")
comm.commantype=4
set comm.activeconnection=conn
comm.commandtext="dbo.dt_users"
set rs=server.createobject("adodb.recordset")
rs.open comm,,1,1

2.給存儲過程傳遞參數
如果存儲過程中不用參數,而是單一的sql語句,還顯示不出調用存儲過程的優勢!
比如說一bbs的查詢,可以按作者和主題查詢!則可以建立存儲過程如下:
參數keyword為關鍵字,choose是選擇查詢的方法。
CREATE PROCEDURE [dbo].[dt_bbs]
@keyword varchar(20)=null,
@choose int=null
as
if @choose=1
select * from bbs where name like @keyword
else
select * from bbs where subject like @keyword
return
go
這樣我們調用存儲過程時只需將參數傳遞過去就行了,而省去在asp中來寫一段程序
用第一種方法:
set rs=server.createobject("adodb.recordset")
sql="exec dt_bbs ''"&keyword&"'',"&choose&""
rs.open sql,conn,1,1
用第二種方法:
set comm=server.createobject("adodb.command")
comm.commantype=4
comm.Parameters.append comm.CreateParameter("@keyword",adChar,adParamInput,50,keyword)
comm.Parameters.append comm.CreateParameter("@keyword",adInteger,adParamInput,,choose)
set comm.activeconnection=conn
comm.commandtext="dbo.dt_bbs"
set rs=server.createobject("adodb.recordset")
rs.CursorType=3
rs.open comm,,1,1

H. sql資料庫中怎樣調用帶參數的存儲過程

在sql
server中
執行帶參數的存儲過程
exec+空格+存儲過程名+空格+參數
多個參數的話用逗號分隔
傳出參數要加output
例如:
exec
P_GetIntegratedFluxOneMoment
@StartTableName,@ColName,@StartTime,@StartValue
output
其中@StartTableName,@ColName,@StartTime,@StartValue都是前面已經定義好的變數
傳入參數也可以不用變數
直接寫值也行
程序中調用的話看你用什麼語言了
各個語言的調用方法不一樣

I. 如何調用帶參的存儲過程

應該是這樣的。
RunProcere這個方法,調用存儲過程,
storedProcName 存儲過程名
parameters 存儲過頃遲程參數列表
tableName 這個表名指的是,你的存儲雀知李過程對某一張表做了數據的保存或修改,然後通過這個參數來把這個表的數據查出來猛頃,fill方法的作用就是 select 「tableName」這個表,然後把結果集放入DataSet中並返回。

J. 在java中怎麼調用帶參數的存儲過程

JDBC調用存儲過程: CallableStatementx0dx0a在Java裡面調用存儲過程,寫法那是相當的固定:x0dx0aClass.forName(....x0dx0aConnection conn = DriverManager.getConnection(....x0dx0a/**x0dx0a*p是要調用的存儲過程的名字,存儲過程的4個參數,用4個?號佔位符代替x0dx0a*其餘地方寫法固定x0dx0a*/x0dx0aCallableStatement cstmt = conn.prepareCall("{call p(?,?,?,?)}");x0dx0a/**x0dx0a*告訴JDBC,這些個參數,哪些是輸出參數,輸出參數的類型用java.sql.Types來指定x0dx0a*下面的意思是,第3個?和第4個?是輸出參數,類型是INTEGER的x0dx0a*Types後面具體寫什麼類型,得看你的存儲過程參數怎麼定義的x0dx0a*/x0dx0acstmt.registerOutParameter(3, Types.INTEGER);x0dx0acstmt.registerOutParameter(4, Types.INTEGER);x0dx0a/**x0dx0a*在我這里第1個?和第2個?是輸入參數,第3個是輸出參數,第4個既輸入又輸出x0dx0a*下面是設置他們的值,第一個設為3,第二個設為4,第4個設置為5x0dx0a*沒設第3個,因為它是輸出參數x0dx0a*/x0dx0acstmt.setInt(1, 3);x0dx0acstmt.setInt(2, 4);x0dx0acstmt.setInt(4, 5);x0dx0a//執行x0dx0acstmt.execute();x0dx0a//把第3個參數的值當成int類型拿出來x0dx0aint three = cstmt.getInt(3);x0dx0aSystem.out.println(three);x0dx0a//把第4個參數的值當成int類型拿出來x0dx0aint four = cstmt.getInt(4);x0dx0aSystem.out.println(four);x0dx0a//用完別忘給人家關了,後開的先關x0dx0acstmt.close();x0dx0aconn.close();x0dx0ax0dx0aJDBC調用存儲過程,掌握這一個程序足夠了.x0dx0a以下是上面程序使用的存儲過程的代碼,我用的是Oracle資料庫,不過不論是什麼資料庫,對於你的程序,JDBC這一端寫法都是一樣的.x0dx0ax0dx0acreate or replace procere px0dx0a(v_a in number,v_b number,v_ret out number,v_temp in out number)x0dx0aisx0dx0abeginx0dx0aif(v_a > v_b) thenx0dx0av_ret := v_a;x0dx0aelsex0dx0av_ret := v_b;x0dx0aend if;x0dx0av_temp := v_temp + 1;x0dx0aend;

熱點內容
特斯拉modely買哪個配置 發布:2024-05-09 09:32:01 瀏覽:61
androidpc機 發布:2024-05-09 09:31:51 瀏覽:469
伺服器配置外網地址查詢 發布:2024-05-09 09:22:31 瀏覽:657
win系統如何組建sip伺服器 發布:2024-05-09 08:52:21 瀏覽:279
基於圖像匹配演算法 發布:2024-05-09 08:35:32 瀏覽:29
編譯安卓內核源碼 發布:2024-05-09 08:22:32 瀏覽:185
騎砍二霸主怎麼連接聯機伺服器 發布:2024-05-09 08:21:58 瀏覽:547
c語言引用參數 發布:2024-05-09 08:21:58 瀏覽:252
怎麼查看伺服器流量 發布:2024-05-09 08:12:34 瀏覽:880
不用壓縮泵 發布:2024-05-09 08:12:33 瀏覽:851