我有以下代码:
Using cmd As SqlCommand = Connection.CreateCommand
cmd.CommandText = "UPDATE someTable SET Value = @Value"
cmd.CommandText &= " WHERE Id = @Id"
cmd.Parameters.AddWithValue("@Id", 1234)
cmd.Parameters.AddWithValue("@Value", "myValue")
cmd.ExecuteNonQuery
End Using
Run Code Online (Sandbox Code Playgroud)
我想知道是否有任何方法可以将最终的SQL语句作为String获取,它应该如下所示:
UPDATE someTable SET Value = "myValue" WHERE Id = 1234
Run Code Online (Sandbox Code Playgroud)
如果有人想知道为什么我会这样做:
我正在从一堆文本文件中生成一些sql insert语句.
这些文本文件通常是用户输入数据.我想清理这些数据,以便它不会破坏插入语句.
例如,一些输入数据,人们使用了"不要"这个词.不会导致sql语句认为字符串已经结束并因此导致错误.
有没有我可以调用的.NET方法将所有这些字符转换为转义码或安全字符?