您好,登錄后才能下訂單哦!
小編給大家分享一下ado如何調(diào)用存儲(chǔ)過(guò)程,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
你可以在安裝ADO調(diào)用存儲(chǔ)過(guò)程中。但它的功能沒(méi)有Oracle或Microsoft那么多。而且,當(dāng)然,Data Direct有一個(gè)本地的data provider for Oracle??梢园惭b在Visual Studio中。但它的功能沒(méi)有Oracle或Microsoft那么多。
在ADO調(diào)用存儲(chǔ)過(guò)程一直是一個(gè)困擾大家的問(wèn)題。其實(shí),關(guān)于ADO調(diào)用存儲(chǔ)過(guò)程的方法在很多書(shū)中都有講到,標(biāo)準(zhǔn)的做法無(wú)非是按照以下步驟進(jìn)行:
1、生成并初始化一個(gè)_CommandPtr對(duì)象;
2、生成調(diào)用存儲(chǔ)過(guò)程需要的參數(shù),這些參數(shù)都是_ParameterPtr對(duì)象;
3、按照順序?qū)⑹褂胈CommandPtr的Append方法為存儲(chǔ)過(guò)程提供參數(shù)(包括輸入?yún)?shù)和輸出參數(shù));
4、為_(kāi)CommandPtr對(duì)象指定需要使用的ADO連接;
5、使用_CommandPtr的Execute方法調(diào)用存儲(chǔ)過(guò)程;
6、從結(jié)果中獲取返回參數(shù)的值(如果有的話(huà))。 具體的過(guò)程在此我不詳細(xì)描述,我想看看本文附帶的代碼就應(yīng)該很明白了。在這里我想就我使用ADO調(diào)用存儲(chǔ)過(guò)程時(shí)的一些體會(huì)說(shuō)明一下。
1、關(guān)于CreateParameter函數(shù)
該函數(shù)的原型為:CreateParameter (Name, Type, Direction, Size, Value)其中Name是參數(shù)的名稱(chēng),可以指定也可以不指定;
Type是一個(gè)DataTypeEnum值,指定參數(shù)的類(lèi)別,取值有adInteger(整型)、adChar(字符/字符串型)等;ADO調(diào)用存儲(chǔ)過(guò)程Direction是一個(gè)ParameterDirectionEnum值,其取值為adParamInput、adParamInputOutput、adParamOutput、adParamReturnValue、adParamUnknown;Size是一個(gè)Long類(lèi)型的值,指示該參數(shù)值以字節(jié)計(jì)算的***長(zhǎng)度,例如對(duì)int型,該值可以取為sizeof(int),
對(duì)Long型,該值可以取為sizeof(long),ADO調(diào)用存儲(chǔ)過(guò)程對(duì)字符串型,可以使用該字符串的長(zhǎng)度;Value是一個(gè)variant類(lèi)型的值,是該參數(shù)的取值。在這里需要注意的是,Type參數(shù)、Direction參數(shù)以及Size參數(shù)一定要和存儲(chǔ)過(guò)程定義時(shí)的參數(shù)相吻合,
例如,如果有下面一個(gè)存儲(chǔ)過(guò)程:
CREATE PROCEDURE SMS_Proc_Handle_All (@UserID Integer, @SourAddr Varchar(15), @DestAddr varchar(5000), @AvValue Single output, @ReturnInfo varchar(100) output
看完了這篇文章,相信你對(duì)“ado如何調(diào)用存儲(chǔ)過(guò)程”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。