我有一个需要插入MySQL的东西的描述。字符串可以包含任何字符,例如<&#;;>,< \'>,< \'>:
string=This \'is\' a string
string=This is a' string
string=This '\is\' a string
C#代码:
strDescerption=strDescerption.Trim(new char[] { '\'', '\\' }).Replace("'''", " ").Replace("''", "\"").Replace("'", @"\'").Replace(@"\\'", @"\'");
MySqlCommand mySqlCommandThing = new MySqlCommand("", mySqlConnection);
mySqlCommandThing.CommandText = "Insert into table (string) values ("+ strDescerption+")";
int isInserted = mySqlCommandThing.ExecuteNonQuery();
如果我这样使用它们,我会得到MySQL插入错误。 上面的例子是原始字符串,只是在'之前添加反斜杠。无法解决问题。我还能做些什么来准备这个字符串?我正在使用C#和MySQL。
答案 0 :(得分:0)
只需使用MySql.Data.MySqlClient.MySqlHelper.EscapeString()
- 方法
答案 1 :(得分:0)
您还可以使用以下内容。
using System.Web;
var encoded = HttpUtility.HtmlEncode(string);