2012-10-18 69 views
0

我的應用程序(一個測試用例自動化工具)不支持調用ODBC的SQLSetStatmentOption。我需要設置光標選項SQL_SOPT_SS_CURSOR_OPTIONS to SQL_CO_FFO_AF。現在我使用連接字符串(無DSN)連接到服務器。我正在使用sqlsrv32.dll or Sqlncl10.dll有沒有辦法在DSN中設置ODBC連接選項?

有沒有辦法設置我的工具和MSSQL服務器之間的DSN(或其他層)光標選項?該工具處理創建遊標(或結果集),並以一種似乎模糊直接管理它的方式遍歷結果集。它確實允許調用SQLSetConnectAttr(),但據我所知,沒有辦法在那裏設置光標選項。

所有這一切都是試圖加快通過遠程連接檢索數據。在SQL Management Studio中,我得到相當的響應時間,以本地或遠程數據庫,但在自動化工具遠程查詢需要數百次長,可能是因爲它似乎是作出往返於服務器的每一行。

回答

0

沒有辦法設置我所知道的連接字符串中的語句選項。在ODBC 1.0和2.0,你可以撥打電話到的SQLSetConnectOption for語句屬性和它們設置在這方面創建的每個語句的屬性,但一)這是一個老版本的API(雖然它可能仍然有效)b)您還做不到它來自DSN。在unixODBC中,您可以在DSN中設置一些環境和連接屬性,但顯然是Windows。

我不相信反正你已經正確識別的問題,即使你有,你怎麼知道你的應用程序不使用SQLGetData(當您將SQL_CO_FFO_AF這是禁用)。你確定你沒有啓用MAR嗎?你有沒有嘗試獲得一個ODBC跟蹤來查看應用程序在做什麼?

相關問題