2012-03-02 45 views
0

我想實現這個查詢使用Qt:功能NOW()Qt的

mysqlpp::Query query = acdb.query(); 
query << "INSERT INTO jobs (jobType, creationDate, reelType)  
VALUES('ARCHIVE', NOW(), '" + reelType + "')"; 

其中NOW()返回當前的日期和時間。

這是我的代碼Qt的:

QSqlQuery query; 
query.prepare("INSERT INTO jobs (jobType, creationDate, reelType) VALUES ('ARCHIVE', 
'NOW()', '" + reelType + "')"); 

這裏現在返回0000-00-00 00:00:00

是否有類似的功能?

+0

我並不熟悉這一點,但爲什麼在你的Qt版本中'NOW()'的單引號? (我可能是無能爲力,但它只是讓我感到奇怪:)) – Bart 2012-03-02 09:21:31

+0

我認爲,當我加載QMYSQL驅動程序,功能NOW()工作正常 – Jjreina 2012-03-02 09:30:31

+0

很高興你解決它。 :) – Bart 2012-03-02 09:34:45

回答

1

您正在嘗試插入字符串值'NOW()'到日期時間字段,因此導致了無效值:

"INSERT INTO jobs (jobType, creationDate, reelType) VALUES ('ARCHIVE', 
'NOW()', '" + reelType + "')"); 

將其替換爲:

"INSERT INTO jobs (jobType, creationDate, reelType) VALUES ('ARCHIVE', 
NOW(), '" + reelType + "')"); 

順便說一句。 NOW()是一個純粹的SQL函數。使用哪個平臺或框架發送查詢並不重要,它完全由SQL服務器評估。

+0

非常感謝,現在()工作正常。 – Jjreina 2012-03-02 09:31:09