在 MySQL 中,我们可以使用PreparedStatement
.
我想在 SQL 脚本中实现相同的功能。如何创建准备好的语句以及如何执行它?请为此提供一个例子。
在 MySQL 中,我们可以使用PreparedStatement
.
我想在 SQL 脚本中实现相同的功能。如何创建准备好的语句以及如何执行它?请为此提供一个例子。
我建议对大多数动态 SQL 使用sp_executesql
over exec
。 sp_executesql
与 MySQL 的相似之处EXECUTE...USING
在于它可以接受参数,而不仅仅是串联的字符串,因此可以很好地防御 SQL 注入。sp_executesql
还允许 SQL Server 重用查询计划以实现更高效的查询。这是一个例子:
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
可以在此处找到更多信息和示例。