我想将其插入数据库表

时间:2015-07-10 07:11:02

标签: sql sql-server

insert into tblemp (Empno, Ename, Salary) 
values('3', '[hgh''//?||']', '1234')

我收到以下错误:

  

Msg 102,Level 15,State 1,Line 1
  ']'附近的语法不正确。

     

Msg 105,Level 15,State 1,Line 1
  字符串后面的未闭合引号')'。

3 个答案:

答案 0 :(得分:4)

字符串[hgh''//?||']包含必须引用的单引号(即加倍,因此SQL引擎知道您确实需要'字符),否则它们将被解释为字符串分隔符。

您的查询解释如下:应插入字符串[hgh'//?||(以下'结束字符串),但是那里的]不应该是&#39}。在那里。 '之后的]也会启动一个不会结束的新字符串。 SQL引擎不知道如何处理它,因为它不是有效的SQL。

要将此值[hgh''//?||']字面插入列中,您需要编写

insert into tblemp(Empno,Ename,Salary) values('3','[hgh''''//?||'']','1234');

答案 1 :(得分:0)

了解“逃离”,例如:

Escaping SQL

Escaping C#

答案 2 :(得分:0)

试试我已经测试过了

insert into tblemp (Empno, Ename, Salary) 
values('3', '[hgh''''//?||'']', '1234')