2010-10-21 20 views
0

我正在將一些RDO代碼轉換爲.NET中的ODBC提供程序代碼。.NET ODBC Oracle參數獲取數據庫提供者返回的參數名稱 - 可能嗎?

問題是在orignal代碼中未指定參數名稱,但參數名稱在執行命令後通過參數名稱檢索。

有沒有辦法讓命令執行後由提供者填充參數名稱,以便調用代碼可以按名稱訪問參數。

讓我告訴你一個param聲明和訪問它的例子。

With rdqryClntBasic 
     .Parameters.Add(.CreateParameter) : .Parameters(0).Direction = ParameterDirection.Input 
     .Parameters(0).DbType = DbType.String 
     .Parameters(0).Value = sClntProdCd 

末隨着

.EffectiveDate = TODATE(rdqryClntBasic.Parameters( 「dtEffDt」)。值)

現在你可以看到這是如何 「使用RDO/VB工作」。出於某種原因,它會接受這一點,並知道執行後的參數名稱。我想它必須再次往返數據庫才能獲得此信息。

有沒有辦法在.NET中爲ODBC提供者(使用Oracle)模仿這種行爲?或者我堅持在代碼中手動指定參數名稱(我知道這是更好的選擇,但想知道替代方法是如何儘可能匹配原始代碼)。

回答

0

不,ODBC中的參數是位置而不是名稱。