Соединитель MySQL x-devapi /C++, как мне работать со значениями RAW? В частности, как мне перевести данные даты / времени?
Используя соединитель MySQL x-devapi (C++), как мне работать с типом необработанного значения, возвращаемым базой данных? В частности, как мне перевести поле даты / времени?
Я знаю, что об этом уже спрашивали. Я хотел бы сделать это без добавленияUNIX_TIMESTAMP()
функция на мои запросы.
Код:
int main() {
cout << "Testing MySQL" << endl;
try {
Session session(
SessionOption::USER, user,
SessionOption::PWD, password,
SessionOption::HOST, "127.0.0.1",
SessionOption::PORT, 33060,
SessionOption::DB, "demo",
SessionOption::SSL_MODE, SSLMode::DISABLED
);
Schema db = session.getSchema("demo");
RowResult dataSet = session.sql("SELECT SYSDATE() FROM DUAL;").execute();
Row row;
while ((row = dataSet.fetchOne())) {
cout << "SYSDATE is " << row[0] << endl;
}
exit(0);
}
catch (const Error &err) {
cout << "ERROR! " << err << endl;
exit(1);
}
return 0;
}
Должен выводить
Testing MySQL
SYSDATE is 2020-06-02 11:40:06
Вместо этого вывод
Testing MySQL
SYSDATE is <7 raw bytes>
Перевод должен выполняться программой (код C++), а не MySQL, поскольку программа будет многоплатформенной, и я хотел бы иметь возможность использовать одни и те же запросы для каждого.