MySQL + +(C + +のライブラリ)を操作するために使用します
データベースには、AUTO_INCREMENTするフィールドがいくつかあります。テーブルに新しい行を挿入するときに、これらのフィールドがどのような値になるかを知るにはどうすればよいですか?
MySQL + +(C + +のライブラリ)を操作するために使用します
データベースには、AUTO_INCREMENTするフィールドがいくつかあります。テーブルに新しい行を挿入するときに、これらのフィールドがどのような値になるかを知るにはどうすればよいですか?
スタッカーの答えは機能しますが、MySQL++ はその関数をSimpleResult::insert_id()としてラップします。例:
Query q = conn.query();
q.insert(something);
if (SimpleResult res = q.execute()) {
cout << "Auto-increment value: " << res.insert_id() << endl;
}
C API関数を使用mysql_insert_id()
して、挿入後に自動インクリメント値を取得できます。MySqlリファレンスマニュアルも参照してください