Slide 29
Slide 29 text
29
プリペアード・ステートメント (Prepared Statement)
SQLを実行するメソッドの引数にプレースホルダ(?)を含むSQL文と、?に入れ
る値を与えるとプリペアード・ステートメントとして実行される
プリペアード・ステートメントを使うメリット
–速度向上 (※次ページの補足参照)
–SQLインジェクション対策
select="SELECT * FROM STAFF WHERE JOB=? AND YEARS > ?"
sql.eachRow (select,['Sales',7]) {
println "${it.NAME} (JOB=${it.JOB},YEARS=${it.YEARS})"
}
insert="INSERT INTO TEST3(ID,NAME,JOB,YEARS) VALUES (?,?,?,?)"
sql.execute(insert,[100,'KEN','Mgr',10])
sql.execute(insert,[101,'JOE','Sales',5])