2014-02-12 1 views
1

Я использую C# для добавления расширенных свойств в таблицы в моей базе данных. Когда я использую редактор SQL, этот код работает, поскольку каждый оператор находится в новой строке. Однако при создании команды в виде строки в C# я дважды получаю «Неверный синтаксис около GO» в том же сообщении об ошибке. Как я могу написать это так, чтобы C# выполнял его на отдельных строках или в правильном синтаксисе?Проблема синтаксиса с командой SQL Server GO

USE UserList; 
GO EXEC sys.sp_addextendedproperty 
@name = N'Description', 
@value=N'some text', 
@level0type=N'SCHEMA', @level0name=N'dbo', 
@level1type=N'TABLE', 
@level1name=N'table_name' 
GO 
+4

'GO' подсказка для SQL Management Studio см http://stackoverflow.com/questions/40814/how-do-i-execute-a-large-sql-script-with -go-commands-from-c и другие –

+0

Кроме того, используя @ перед строковым литералом, вы можете использовать многострочные запросы без добавления специальных символов. – Tarec

+0

Вышел GO, и теперь он работает безупречно, спасибо, ребята. Сделайте ответ, и я приму это. –

ответ

1
USE UserList; 
GO   --<-- Go key word should be on it own in a line nothing before or after 

EXEC sys.sp_addextendedproperty 
@name = N'Description', 
@value=N'some text', 
@level0type=N'SCHEMA', @level0name=N'dbo', 
@level1type=N'TABLE', 
@level1name=N'table_name' 
GO 
+0

Это показывает, что вы вряд ли читаете мой вопрос или следующие комментарии. –