2011-01-29 2 views
7

Я использую SQL SERVER 2005 Express. Я могу удалить базу данных из анализатора запросов, что вы называете Mgmt Studio (ssmsee), предоставив двойные кавычки имени базы данных, и все будет сделано;SQLCMD - попытка сбросить базу данных с буквенно-цифровым именем «14Data» дает ошибку синтаксиса

падения базы данных "14data" Go

и БД нет,

но SQLCMD дает ошибку на 14 (Msg 102 уровня 15 Государственных 1 Некорректного sysntax около 14) Может быть он считает цифровую часть как и некоторые другие вещи, а не имя базы данных, я попытался с помощью N '', "", $(), также попробовал переменные и выполнил правильные файлы сценариев sql (которые работали корректно в студии mgmt), но при этом дает ту же ошибку при точном то же место.

Имеет ли когда-нибудь удаленную базу данных с буквенно-цифровым именем db из SQLCMD?

ответ

11

Вы можете быть в состоянии enclose it [] brackets.

например

drop database [14data] go 
+0

да вот ответ, спасибо всем – maqk

+0

Спасибо! Это также относится к тому, когда ваше имя базы данных выглядит как путь (например, C: \ USERS \ Admin \ DESKTOP \ EXAMPLE.MDF) –

5

для специальных символов использовать [] квадратные скобки. Он должен использоваться при работе с ключевыми словами, специальными символами для имен столбцов, имен таблиц и имен баз данных.

Drop Database [14data] 
+0

да, ваш ответ правильный, спасибо, как отметить ответ? – maqk

+0

Вы можете только отметить один из ответов как правильный ... – Mulki