向数据库中添加含有单引号的数据

当向数据库中添加含有单引号的数据时会发生错误

insert into tmp(name,pass)values ('UNCLE TOM'S CABIN','123')

消息 102,级别 15,状态 1,第 5 行'S' 附近有语法错误。

消息 105,级别 15,状态 1,第 5 行字符串 ')' 后的引号不完整。

INSERT INTO info (value) VALUES('" + value + "')

解决方案:

利用两个单引号转义:

insert into tmp(name,pass)values ('UNCLE TOM''S CABIN','123')

C#

string str = "UNCLE TOM'S CABIN";
MessageBox.Show(str.Replace("'", "''"));
Database.ExecuteADU("insert into tmp values('" + str.Replace("'", "''") + "','1')");

测试结果:

插入成功!

原文地址:https://www.cnblogs.com/lijingpeng/p/2453901.html