有一个非常大的应用程序,它在执行查询时遇到单引号发送到数据库的问题,现在使用replace函数用2个单引号替换单引号,这解决了特定属性的问题,但是我想做一个最小的更改,可以处理DAL层中的整个应用程序问题。
这是我的问题:
EXECUTE PROCEDURE sp_procedurename('1','test','tester's code','0')
上述字符串应转换为
EXECUTE PROCEDURE sp_procedurename('1','test','tester''代码','0')或者 执行过程sp_procedurename('1','test','testers code','0')
用2个单引号替换或删除它也有效。
答案 0 :(得分:0)
这应该有用。
string pattern = @"(\w+)'(\w+)";
string replacement = "$1''$2";
string input = "EXECUTE PROCEDURE sp_procedurename ('1', 'test', 'tester's code', '0')";
string result = Regex.Replace(input, pattern, replacement);
使用" $ 1 $ 2"如果您不想要单引号,请作为替代。