1970 年 1 月 1 日からの秒数を記録する c++ の time double があります。
この double を変換して MySQL データベースに保存したいので、最初に datetime 形式に変換するコードを次に示します: *注: ss.time は double..
/* do the time conversion */
time_t rawtime;
struct tm * timeinfo;
rawtime = (time_t)ss.time;
timeinfo = localtime(&rawtime);
このコードは、次の形式に変換します: Thu Jul 24 05:45:07 1947
次に、次のように MySQL データベースに書き込もうとします。
string theQuery = "UPDATE readings SET chng = 1, time = CAST('";
theQuery += boost::lexical_cast<string>(asctime(timeinfo));
theQuery += "' AS DATETIME) WHERE id = 1";
機能しませんが、テーブルの時間 DATETIME 変数を NULL で更新します。
誰かが正しい変換を行い、SQL テーブルを更新する方法を教えてもらえますか?