💬
ruby pg gemでのプリペアドステートメントの書き方サンプル
前提条件
id, title, contentカラムがある、テーブルmemosのtitleとcontentカラムを更新する
プリペアドステートメントを使っていないver
conn.exec("UPDATE memos SET title = 'hoge1', content = 'hoge2' WHERE id =hoge3)
プリペアドステートメントを使う
sql文の中に$1,$2など用意し、exec_paramsメソッドの第2引数に配列で指定する(配列の順番が$1,$2の順番に対応する)
conn = PG.connect( dbname: 'memo_app' )
sql = %q{UPDATE memos SET title = ($1), content = ($2) WHERE id = ($3)}
conn.exec_params(sql,[hoge1, hoge2, hoge3])
pgのドキュメントはこちら
Discussion