[系統] 關於ODBC的版本
資料庫名稱:MSSQL
資料庫版本:MSSQL 2012
作業平台:WIN 2012 R2
問題描述:
抱歉 請問一下
近期遇到一個問題是
在 WINDOWS 2012 R2 ODBC32 (6.3.9600.17415)
用 ODBC去連 MSSQL 2012 連線有建立成功而且也可以成功 CREATE DB 但是要做接下來的動作卻Fail
程式示意如下 (僅做邏輯表示 語法有誤見諒)
functionXX(const unsigned char*SQLStmt)
{
...
SQLExecDirect(StmtHandle,(SQLCHAR*)SQLStmt,SQL_NTS);
...
}
然後呼叫的部份:
functionXX("CREATE DATABASE db_test"); //step1
functionXX("ALTER DATABASE db_test MODIFY FILE(NAME=db_test, SIZE=20)"); //step2
跑到step2 就報錯
SQLState='24000', Error message: [Microsoft][ODBC SQL Server Driver]Invalid cursor state
目前就只有在這個環境下會出錯
原先以為是SQL SERVER的設定造成 但是後來查了一些資料看起來比較像是ODBC這邊的問題
我有問到的是說建議在原本呼叫那行之前 加一行
SQLFreeStmt(StmtHandle, SQL_CLOSE); //prepend
SQLExecDirect(StmtHandle,(SQLCHAR*)SQLStmt,SQL_NTS); //original
但因為沒有太多機會在production 機器上做測試 所以想先確定一下方向
所以想請問
(1) 有沒有人有遇過類似經驗,或是看得出來大概是什麼問題嗎?
(2) 或是有人知道怎麼做可以把ODBC更新成 6.3.9600.17415 這個版本 我想local reproduce看看
謝謝各位 <(_ _)>
--
麻煩你,魚丸粗麵..
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.79.158
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1460464079.A.828.html
推
04/13 09:06, , 1F
04/13 09:06, 1F
→
04/13 10:29, , 2F
04/13 10:29, 2F
Database 近期熱門文章
PTT數位生活區 即時熱門文章