2012-03-11 38 views
2

我试图在sql数据库中插入通配符('),但错误即将到来, STRING被截断。如何在数据库中插入通配符字符'

Text1.text="D'John Is Writing Dev's Books" 

这里有两个通配符(')在文本中。当我尝试在数据库中插入此文本时,问题即将出现。整个字符串应该按原样插入,以及按照原样进行检索。

我写CMD=new sqlcommand("insert into tablename values('"& Text1.text &"')",con)

+1

你如何将它插入数据库?如果你正在构建自己的SQL字符串,那可能是问题领域,而不是字符串分配。 – 2012-03-11 12:14:56

回答

4

请不要使用双撇号答案。这是错误的做法。使用查询参数,而不是像这样:

CMD=new sqlcommand("insert into tablename values(?)",con) 
CMD.Parameters.Add("@MyParameter", SqlDbType.VarChar, 100).Value = Text1.Text 

是困惑我的是,你说你正在使用的访问,但你有一个SqlCommand对象的另一件事。一个SqlCommand只与Sql Server对话。 Access需要OleDb或Odbc提供程序,它们分别使用OleDbCommand或OdbcCommand以及不同的参数占位符。

相关问题