我正在使用QSqlQuery插入數據到MySQL數據庫。目前我所關心的是讓這個與MySQL一起工作,但理想情況下,我希望儘可能保持平臺無關。QSqlQuery更新/插入日期時間與服務器的時間(例如CURRENT_TIMESTAMP)
什麼我後,在MySQL的情況下,是與有效執行類似下面的查詢代碼來結束:
UPDATE table SET time_field=CURRENT_TIMESTAMP() WHERE id='5'
下面的代碼是什麼,我都嘗試,但它失敗:
QSqlQuery query;
query.prepare("INSERT INTO table SET time_field=? WHERE id=?");
query.addBindValue("CURRENT_TIMESTAMP()");
query.addBindValue(5);
query.exec();
我得到的錯誤是:Incorrect datetime value: 'CURRENT_TIMESTAMP()' for column 'time_field' at row 1 QMYSQL3: Unable to execute statement
。我並不感到驚訝,因爲我認爲Qt在綁定值時正在進行一些類型檢查。
我已經通過Qt文檔挖掘以及我知道如何,但我找不到API專門設計用於支持MySQL的CURRENT_TIMESTAMP()函數或任何其他DBMS的任何東西。
有什麼建議嗎?