我在SQL Server中遇到插入查询问题。查询的全文是
insert into franchise (fran_id, name, address1, address2, city, state, zip, email, phone, text)
values(0, "DevFranchise1", "101 Main St.", "-", "Brighton", "Mi", "48116", "dev1@franchisezippy.com", 8105551234, "asdflkjsadf");
现在“状态”和“文字”都是高亮的蓝色。它给出了一个错误列表,如下所示:
Msg 207, Level 16, State 1, Line 1
Invalid column name 'DevFranchise1'
Msg 207, Level 16, State 1, Line 2
Invalid column name '101 Main St.'
这是什么意思/我该如何解决?
答案 0 :(得分:5)
尝试使用单引号(')而不是double(“)。
否则,您的值似乎被视为列名。
答案 1 :(得分:5)
字符串文字应使用单引号('
),而不是双引号("
)。
此外,直角括号([]
)将允许您使用关键字(例如状态和文本)作为列名。这并不总是必要的,但在模棱两可的情况下提供了一条出路。
insert into franchise
(fran_id, name, address1, address2, city, [state], zip, email, phone, [text])
values
(0, 'DevFranchise1', '101 Main St.', '-', 'Brighton', 'Mi', '48116',
'dev1@franchisezippy.com', 8105551234, 'asdflkjsadf');
答案 2 :(得分:2)
使用单引号,它可能会有效。
答案 3 :(得分:1)
您必须在SQL中使用单引号。
答案 4 :(得分:1)
使用单引号字符而不是SQL
中的双引号字符答案 5 :(得分:1)
set quoted_identifier off
在插入之前。
但更好的是使用单引号。