Имя таблицы, содержащее специальные символы '[' и ']'
Я хочу создать таблицу на сервере SQL с использованием [ ] в значке name.it означает [ ] является частью имени таблицы. Как я могу это сделать? Я использую SQL Server 2008 г2
4 ответа
Ты можешь использовать ]
если вы заключите имя таблицы в двойные кавычки:
create table "[Mu]Ha[Ha]" (id int);
Обратите внимание, что использование нерегулярных идентификаторов является приглашением для неприятностей в будущем. Не все клиентские библиотеки будут работать с ними правильно, и ваш код станет труднее читать для других разработчиков.
Вы можете создать таблицу (или имена столбцов), используя [
]
в этом, но это считается плохой практикой.
CREATE TABLE "tabl[eO]ne" (ID int NOT NULL)
вышеописанное будет работать, но считается плохой практикой, поскольку затрудняет чтение и понимание кода не только для вас, но и для других разработчиков, работающих над базой данных после вас.
в SQL люди используют скобки вокруг имени таблицы / столбца, если имя содержит пробелы или определенный специальный символ, как в примере ниже:
CREATE TABLE [Table One]
CREATE TABLE [Table-One]
CREATE TABLE [Table_One]
CREATE TABLE [Table*One]
...
Это все еще не очень хорошая практика, но она следует руководящим принципам "лучшей практики".
Лучшая практика: избегайте использования специальных символов, цифр или пробелов в имени таблицы / столбца.
Вы можете преодолеть это с помощью двойной скобки. увидеть ниже:
CREATE TABLE dbo.[[tbl]]](id INT)
Заключите в квадратные скобки. Но это не очень хорошая практика ["name[a]abc"]