2010-01-07 5 views
1

У меня возникла проблема с запросом на вставку в SQL Server. Полный текст запроса:SQL Server Query - проблема с вставкой

insert into franchise (fran_id, name, address1, address2, city, state, zip, email, phone, text) 
values(0, "DevFranchise1", "101 Main St.", "-", "Brighton", "Mi", "48116", "[email protected]", 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.' 

Что это значит/как его исправить?

ответ

5

Строковые литералы должны быть в одинарных ('), а не двойные кавычки (").

Кроме того, прямоугольные скобки ([]) позволят вам использовать ключевые слова (например, состояние и текст) в качестве имен столбцов. Это не всегда необходимо, но обеспечивает выход в неоднозначные ситуации.

insert into franchise 
    (fran_id, name, address1, address2, city, [state], zip, email, phone, [text]) 
values 
    (0, 'DevFranchise1', '101 Main St.', '-', 'Brighton', 'Mi', '48116', 
    '[email protected]', 8105551234, 'asdflkjsadf'); 
+0

, и в будущем я бы избегал использовать любые ключевые слова в качестве имени столбца. Если он станет синим, как вы описываете, вы знаете, что что-то не так ... –

+0

Спасибо за помощь, ребята, я впервые работаю на сервере IIS. –

1

Вы должны использовать одинарные кавычки в SQL.

5

Попробуйте использовать одиночные кавычки (') вместо двойных (").

В противном случае, ваши ценности, как представляется, рассматриваются как имена столбцов.

1

Используйте одинарные кавычки символ не двойной кавычки в SQL

2

использовать одинарные кавычки и это вероятно, будет работать.

1
set quoted_identifier off 

перед вставкой.

Но лучше использовать одинарные кавычки.