2012-03-02 11 views
0

に私はQtので、このクエリを実装しようとしています:関数()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 + "')"); 

NOW 0000-00-00午前0時00分00秒

は、同様の機能があります返しますか?

+0

私はこれに慣れていませんが、あなたのQtバージョンの 'NOW()'を一重引用符で囲むのはなぜですか? (私は無知かもしれませんが、それはちょうど私が奇妙な私に当たった:)) – Bart

+0

私はQMYSQLドライバをロードしたとき、関数NOW()はうまく動作すると思った – Jjreina

+0

うれしいです。 :) – Bart

答えて

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

関連する問題