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

c調用存儲過程參數類型

發布時間: 2023-07-20 11:57:29

⑴ 如何通過c或c++調用存儲過程

給個例子給你看下:
...

_CommandPtr m_cmdptr;
m_cmdptr.CreateInstance(__uuidof( Command ) );

_ParameterPtr inParam2=NULL;
_ParameterPtr inParam3=NULL;
_ParameterPtr inParam4=NULL;
_ParameterPtr outParam1=NULL;
_ParameterPtr outParam2=NULL;
_ParameterPtr outParam3=NULL;

inParam2.CreateInstance(__uuidof(Parameter));
inParam3.CreateInstance(__uuidof(Parameter));
inParam4.CreateInstance(__uuidof(Parameter));
outParam1.CreateInstance(__uuidof(Parameter));
outParam2.CreateInstance(__uuidof(Parameter));
outParam3.CreateInstance(__uuidof(Parameter));

m_cmdptr->ActiveConnection=m_pConnection;
m_cmdptr->CommandType=adCmdStoredProc;
m_cmdptr->CommandText=_bstr_t("proc_XXX");//存儲過程的名稱

//輸入參數
inParam2=m_cmdptr->CreateParameter(_bstr_t("@P1"),adVarChar,adParamInput,32,_bstr_t(P1));
m_cmdptr->Parameters->Append(inParam2);

inParam3=m_cmdptr->CreateParameter(_bstr_t("@P2"),adVarChar,adParamInput,20,_bstr_t(P2));
m_cmdptr->Parameters->Append(inParam3);

//輸出參數
outParam1=m_cmdptr->CreateParameter("@P4",adInteger,adParamOutput,sizeof(int));
m_cmdptr->Parameters->Append(outParam1);
outParam2=m_cmdptr->CreateParameter("@P5",adInteger,adParamOutput,sizeof(int));
m_cmdptr->Parameters->Append(outParam2);
outParam3=m_cmdptr->CreateParameter(_bstr_t("@P6"),adVarChar,adParamOutput,20,_bstr_t(P6));
m_cmdptr->Parameters->Append(outParam3);

//執行

m_cmdptr->Execute(NULL,NULL,adCmdStoredProc);

//取返回值

long p1=m_cmdptr->Parameters->GetItem("@P4")->Value;
long p2=m_cmdptr->Parameters->GetItem("@P5")->Value;

VARIANT vtP6 =m_cmdptr->Parameters->GetItem("@P6")->Value;
if (vtP6.vt != VT_NULL)
strcpy(tp,(_bstr_t)vtP6);

m_cmdptr.Detach;

⑵ c程序該怎麼樣調用oracle存儲過程並獲取存儲過程中的輸出參數的值

我以前這樣用pro*c 這樣玩的,僅供參考
EXEC sql EXECUTE
DECLARE
lsid varchar2(60);
lss_this_error_code number;
BEGIN
proctest(:ls_name,lsid); --ls_name 輸入參數 lss_id 輸出
:chId := lsid;-- lsid 輸出返回給C變數chId
END;
END-EXEC;

⑶ 求解C#調用ORACLE存儲過程的問題,出現錯誤 ora-06550好像是參數類型和參數個數的問題,我都試N次了。

原來是在.net中,ms為oracle提供的oledb介面有問題,換成oracle自己的就沒有問題了
?? 找來的答案

⑷ C# 怎麼調Mysql帶inout參數的存儲過程

string MyConString = "..."
OdbcConnection conn = new OdbcConnection(MyConString);

conn.Open();
OdbcCommand cmd = new OdbcCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcere;
cmd.CommandText = "p_test";
OdbcParameter p1 = new OdbcParameter("t_count", OdbcType.Int);
p1.Direction = ParameterDirection.Output;
cmd.Parameters.Add(p1);

int i = cmd.ExecuteNonQuery();
TextBox1.Text = p1.Value.ToString();

conn.Close();

⑸ C語言 怎麼 調存儲過程

C語言里沒有存儲過程,只有函數,函數調用有兩種方式
傳值調用(call by value)和傳址調用(call by reference)
例如
f1(x)
{
int a;
a=3*1-1;
f2(x,a);
return a+x;
}

f2(int r,int s)
{
int y;
y=2*r+1;
s=x*r;
r=s-y;
return;
}

f1中調用了f2函數,若第一個參數採用傳值方式(無返回值,即f1中x=3 不變,只是把值傳給f2使用而已)第二個參數採用傳址方式(返回的是s的地址引用,即f1中a的值與f2中s的值相等)若x=3,則a+x=24

⑹ 如何調用存儲過程,有返回值的,有參數的,存儲過程中調用存儲過程

create procere proc_a as declare b int; c varchar2(10); begin proc_b(b, c); dbms_output.put_line (c); end procere a; 你照我這個寫吧 proc_b(b, c); proc_b是你調用的帶返回參數的存儲過程 b是輸入變數,c是輸出變數

⑺ 使用OCI介面調用存儲過程

cstaticCallableStatement唯嘩callprol2(Stringsql,Stringinparameters[],Integeroutparameters[]){
conn=getConn();
try{
cs=conn.prepareCall(sql);
if(inparameters!=null){
for(int指扮行i=0;i<inparameters.length;i++){
cs.setObject(i+1,inparameters[i]);
}
}
//
//給out參缺哪數賦值
if(outparameters!=null){
for(inti=0;i<outparameters.length;i++){
cs.registerOutParameter(inparameters.length+1+i,outparameters[i]);

⑻ 求大神:C語言如何執行SQL sever的存儲過程

執行帶參數的存儲過程的方法如下:
Exec sp_configure 'allow updates',1 --允許更新系統表。
exec dbo.User_ChangeObjectOwnerBatch 'OldOwner','dbo'
以上是兩個例子。
SQL Server中執行帶參數的存儲過程的方法是:
EXEC 存儲過程名字 '參數1','參數2',數值參數
EXEC 是一個關鍵字。
字元串參數使用單引號括起來,數值參數不需要使用單引號

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:432
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:743
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:146
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:239
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726