使用 JSL 建立資料庫連線(並關閉它)我正在嘗試創建一個資料庫連接,然後在腳本完成後關閉它。我已從“New SQL Query()”函數中的“Connection()”命令複製了連接字串,並將其貼上到“Create Database Connection()”函數中。但是,當我執行腳本時,我在與 dbc1 定義相關的日誌中收到錯誤,顯示「[Microsoft][ODBC Driver Manager] 未找到資料來源名稱且未指定預設驅動程式」。
下面是我嘗試運行的 JSL 腳本以及運行沒有問題的舊方法。
筆記:
- 查詢中的 CustomSQL 是在其他地方定義的,因此未顯示以縮短此範例。
- 我試圖遵循這篇文章中顯示的解決方案: https://community.jmp.com/t5/Discussions/How-to-Disconnect-from-a-database-via-script/mp/597749#M80126
- 更新:我正在運行 JMP 16.1 並收到上面顯示的錯誤。當我在 JMP 17.0 中運行它時,它工作得很好。
names default to here(1);
// trying to create the db connection and then insert into the Query
dbc1 = Create database Connection("ODBC:DSN=SQLplus 64-bit ODBC Connection;");
New SQL Query(
Connection( dbc1 ),
CustomSQL( combined )
) << Run Foreground();
// vs. my typical method
New SQL Query(
Connection( "ODBC:DSN=SQLplus 64-bit ODBC Connection;" ),
CustomSQL( combined )
) << Run Foreground();
資料存取視窗回覆:使用 JSL 建立資料庫連線(並關閉它)謝謝至@Dahlia_沃特金斯
回覆:使用 JSL 建立資料庫連線(並關閉它)JMP 支援發現了問題。我從查詢產生器的 New SQL Query() 腳本複製了連接字串。Create Database Connection() 函數不允許使用 DSN 定義的「ODBC:」部分。因此,JSL 腳本需要如下所示:
names default to here(1);
// trying to create the db connection and then insert into the Query
dbc1 = Create database Connection("DSN=SQLplus 64-bit ODBC Connection;");
New SQL Query(
Connection( dbc1 ),
CustomSQL( combined )
) << Run Foreground();