Я использую QSqlQuery для вставки данных в базу данных MySQL. В настоящее время все, о чем я забочусь, это заставить работать работать с MySQL, но в идеале я хотел бы сохранить это как независимое от платформы.QSqlQuery UPDATE/INSERT DateTime со временем сервера (например 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, специально разработанном для поддержки функции CURRENT_TIMESTAMP() MySQL или любой другой СУБД.
Любые предложения?