2011-12-29 58 views
2

您可能會忽略閱讀,但包含在內的是爲了過濾掉告訴我不要做某些我不確定的事情的理由。如何通過DBExpress在ODBC連接上設置屬性?

我想調試一些多線程的數據庫hoopla,它主要是實驗性的,但如果我得到它的工作,我會是一個非常快樂的人。我對DBExpress很陌生(只用了4-5個小時)。我沒有使用TSQLConnection或任何設計時組件,因爲我試圖以一種不被忽視的方式重寫現有的ODBC32.dll接口,一旦完成,我將揭示其餘的迷人之處。我提到這個的原因是因爲很顯然,我沒有以許多教程中顯示的正常方式使用dbexpress。


這裏的問題

我使用的TDBXConnection並連接到一個ODBC數據源,我想嘗試設置我的連接上SQL_ATTR_ASYNC_DBC_FUNCTIONS_ENABLE參數,但我沒有一個線索,其中去設置那個特定的參數。

+1

儘管我想我已經想出了我的問題的答案,但我認爲如果其他人願意回答,我們都可以從一些智慧中受益。 – 2011-12-29 21:57:32

回答

2

你有FDBConnection : TDBXConnection;定義somehwere別的所以現在你得:

....

begin 
    if FDBConnection is TDBXOdbcConnection then 
    with FDBConnection as TDBXOdbcConnection do 
    begin 
    MethodTable.SQLSetEnvAttr(EnvironmentHandle, SQL_ASYNC_ENABLE, Pointer(SQL_ASYNC_ENABLE_ON), 0); 
    MethodTable.SQLSetEnvAttr(EnvironmentHandle, SQL_ASYNC_DBC_FUNCTIONS, Pointer(SQL_ASYNC_DBC_CAPABLE), 0); 

    end; 
end; 

這是相當痛苦的。

包括Data.DBXODBCSystem.ODBC在用途和你是金。