在azure sql数据库中使用“插入”sql查询时出错

ukxgm1gy  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(333)

我创建了一个带有sql数据库的azure sql server,以及该数据库中名为table1的表,其中包含id、firstname、lastname和dob列。但是,当我尝试使用以下语句时:

INSERT INTO table1(ID, FirstName, LastName, DOB)
VALUES (1, "Rohit", "Karthik", "8/2/06")

它输出一个错误:

Failed to execute query. Error: Invalid column name 'Rohit'.
Invalid column name 'Karthik'.
Invalid column name '8/2/06'.

(顺便说一句:id的类型是int,其他的类型都是varchar)
sql server中的上述sql查询不应该在该表中插入新行吗?
我不知道为什么会出现这个错误,请帮忙。

lf5gs5x2

lf5gs5x21#

对文字字符串使用单引号。在标准sql中,双引号代表列名-因此出现以下错误:

INSERT INTO table1(ID, FirstName, LastName, DOB)
VALUES (1, 'Rohit', 'Karthik', '8/2/06')

另外,假设 DOB 属于 date -与数据类型一样,您应该考虑使用更标准的格式(例如 YYYY-MM-DD ,或 YYYYMMDD )而不是依赖服务器推断格式的能力(尽管SQLServer非常擅长)。

相关问题