我继承了一个包含大量 ADO 工作的应用程序,但是编写的插入/更新帮助器方法返回 void。我们也遇到了很多数据更新/插入实际上没有发生的问题。我的目标是更新所有这些以检查受影响的行,并根据结果采取相应的行动,但暂时找出可能导致问题的原因,我想记录对服务器调用的 SQL 语句和数量受语句影响的行数。
这是我正在尝试的声明:
SqlCommand com = new SqlCommand(String.Format("'INSERT INTO
SqlUpdateInsertHistory(Statement, AffectedRows) VALUES (''{0}'', {1});'",
statement.Replace("'", "''"), rows), con);
但它似乎在传入的 sql 中的某个地方不断中断(某些情况下是单引号,但我想还有其他字符也可能导致它。
有没有一种安全的方法来准备要插入的语句字符串?