MySQL では、 を使用して準備済みステートメントを生成できますPreparedStatement
。
SQL スクリプトで同じ機能を実現したいと考えています。準備されたステートメントを作成する方法とそれを実行する方法は? その例を挙げてください。
MySQL では、 を使用して準備済みステートメントを生成できますPreparedStatement
。
SQL スクリプトで同じ機能を実現したいと考えています。準備されたステートメントを作成する方法とそれを実行する方法は? その例を挙げてください。
ほとんどの動的 SQL に はsp_executesql
overを使用することをお勧めします。連結された文字列だけでなくパラメーターを受け取ることができるという点でMySQL に似ているため、SQL インジェクションに対する優れた防御を提供します。また、SQL Server がクエリ プランを再利用して、より効率的なクエリを実行できるようにします。次に例を示します。exec
sp_executesql
EXECUTE...USING
sp_executesql
exec sp_executesql
@statement = N'select * from sys.databases where name = @dbname or database_id = @dbid',
@parameters = N'@dbname sysname, @dbid int',
@dbname = N'master',
@dbid = 1
詳細と例については、こちらを参照してください。