Sql命令错误(Asp.net)

时间:2011-07-18 13:38:26

标签: sql

使用以下代码时出现错误

str = "Insert into BasicData (Id,First name,Last name,std) values (@sid,@firstname,@lastname,@std)"

我得到的错误是近名称

但是当我删除名字

之间的空格时

如果我做到了

  

str =“插入BasicData(Id,Firstname,Lastname,std)值   (@ SID,@姓名,@姓氏,@ STD)“

错误消失了.... 我在数据库表中给了列名First Name(我也把它改成了Firstname,所以错误就消失了)

Sql Database也允许你在列名中有空格???如果它确实如何编写sql insert语句

4 个答案:

答案 0 :(得分:5)

insert into basicdata (id, [First name], [Last name], std)
    values (@sid,@firstname,@lastname,@std)

注意括号,它允许您引用名称中带有空格的列。虽然这不是一个好的做法,但它绝对是系统所允许的。你应该在将来远离这种设计。使阅读更难。 =)

答案 1 :(得分:3)

这不是一个好习惯。但您可以使用[]作为列名。

实施例。 “,[名字],[赛格名],”等等......

答案 2 :(得分:0)

试试这个:

Insert into BasicData ([Id],[First name],[Last name],[std]) values (@sid,@firstname,@lastname,@std)

答案 3 :(得分:0)

带空格的列名必须包含在[方括号]中。