🐥
Node.jsのMySQLでINSERTしたレコードを取得したい時
課題
Node.jsのMySQLライブラリで INSERTした後のレスポンスにレコードの情報が返却されるのかと思っていたら そうでは無かったので、調べました。
テーブル情報
テーブル名
table_name
カラム情報
id:Auto increments
age:Int
解決方法
const [result] = await mysql.execute(
INSERT INTO table_name age VALUES 26
,[]);
const [rows] = await mysql.execute(
SELECT * FROM table_name WHERE id = $<span class="synIdentifier">{</span>result.insertId<span class="synIdentifier">}</span>;
,[]);
console.log(rows[0]);
解説
INSERTのSQLのレスポンス値にinsertIdという項目があり、 これがテーブルのidの値が返ってくるようだったので、 それを使用してSELECTしている。
Discussion