У меня есть таблица и в режиме проектирования столбец имеет [square brackets]
вокруг имени столбца. Из чего это? Я не могу удалить его, и это вызывает проблемы.SQL Server с проблемой столбца при переименовании
ответ
В названии вашей колонки используется reserved keyword. Если вам не нравятся квадратные скобки, они потребуются во многих сценариях, поэтому, возможно, вам следует рассмотреть либо (a) использование незарезервированного слова (например, IsDefault), либо (b) не использовать конструктор , Возможно оба.
Даун-избиратель, не прочь прокомментировать? –
Я столкнулся с этим вопросом один раз при переименовании таблицы. «Exec sp_rename» [схема]. [Tablename] ',' [newTable] ''приведет к этому. Отличие состоит в том, что первое является эталонным, а второе - определением. –
@AaronBertrand Это лучший ответ концептуально, но для решения проблемы сразу я добавил правильный синтаксис для обработки переименования в качестве ответа. Я сталкивался с этой проблемой раньше и нуждался в ней, поэтому я думаю, что это может помочь кому-то найти тот же ответ. –
Обычно это когда поле имеет специальные символы в нем (как и пространство). Попробуйте сделать его только символами и/или цифрами, и он должен уйти.
В режиме «Дизайн таблицы», если вы укажете любое имя столбца как «По умолчанию», оно будет автоматически окружено [], потому что по умолчанию это зарезервированное ключевое слово. Вы можете удалить его, щелкнув правой кнопкой мыши строку и удалить ее.
Идентификаторы, которые не соответствуют всем правилам для идентификаторов, должны быть разделены в инструкции Transact-SQL. Например:
SELECT *
FROM [My Table] --Identifier contains a space and uses a reserved keyword.
WHERE [order] = 10 --Identifier is a reserved keyword.
Ref: MSDN для конкретной документации: http://msdn.microsoft.com/en-US/library/ms175874%28v=SQL.90%29.aspx
Чтобы избавиться от скобок сделать ...
Exec sp_rename '[schema].[table].[[DEFAULT]]]', 'BetterColumnName', 'Column';
+1 хороший момент ... однако у меня нет проблем, щелкнув правой кнопкой мыши в поле имени столбца и переименовав его вручную (я не могу сохранить его без скобок, если я продолжу выбирать зарезервированное ключевое слово, но я не 't явно нужно использовать 'sp_rename', если я хочу более разумное имя). Конечно, я использую SSMS 2012; возможно, предыдущие версии были не так дружелюбны с этим. –
@AaronBertrand Ah, gotcha, я никогда не использовал режим дизайна, поэтому я не знал об этом ограничении. Object explorer и sp_rename позволят мне изменить имя столбца на «DEFAULT» без скобок, но я вижу вашу точку. Ситуация, в которой я находилась, заслуживает этого, заключается в переименовании таблицы, которая была неправильно переименована в окружение. Вместо использования объектного проводника в более 500 базах данных я просто запускал сценарий развертывания. ;) –
Да, имеет смысл. Современные версии инструмента должны отлично справляться с сценарием OP, но если они настаивают на использовании зарезервированных ключевых слов * и * 8-летних версий ... –
- 1. Странного поведения при переименовании столбца в SQL Server 2008
- 2. Sql server 2005 с проблемой кодирования ASP.NET
- 3. Неоднозначное имя таблицы при переименовании столбца на сервере Sql
- 4. Microsoft Mdac с проблемой SQL Server
- 5. Проблема с проблемой соединения sql
- 6. МДС ошибка при переименовании атрибута
- 7. Проверка столбца SQL Server
- 8. sql server trigger для увеличения столбца при уменьшении другого столбца
- 9. Идентификация столбца столбца SQL Server Нумерация
- 10. Шифрование столбца в SQL Server
- 11. Ошибка имени столбца SQL Server
- 12. SQL-соединение в подзапросе с проблемой состояния
- 13. Исключения при переименовании столбца в Laravel 5.1 DB
- 14. Sigkill при переименовании приложения
- 15. Общий синтаксис столбца SQL Server
- 16. проблема параллелизма при обновлении столбца таблицы sql server
- 17. Оставив имя первого столбца в R при переименовании столбцов
- 18. использовать переменную в имени таблицы при переименовании таблицы в SQL
- 19. Недопустимое имя столбца при выполнении запроса в SQL Server 2008
- 20. Шифрование согласованного столбца SQL Server
- 21. Иерархическая сумма SQL Server столбца
- 22. Mysql ошибка # 1064 при переименовании столбцов
- 23. Как переименовать ключи («PK_») и ограничения («DF_») автоматически при переименовании таблицы и/или столбца в SQL Server?
- 24. Обновление столбца Geometry SQL Server
- 25. SQL Server - построение определения столбца
- 26. Шифрование столбца SQL Server 2008
- 27. Идентификатор уникального столбца SQL Server
- 28. Предлагать формулу с проблемой изменения индекса столбца
- 29. SQL Server альясинга с расчетом столбца
- 30. Как вычислить с помощью столбца SQL Server
Содержимое заблокировано организации Причина: Эта Категория Websense фильтруется: личное сетевое хранилище и резервное копирование. URL: http://screencast.com/t/KQZAWzkt – swasheck
Действительно? Как возникают проблемы с '' '' '' '' '' ''? Какие «проблемы» они вызывают? Если вы не используете [этот язык] (http://gbf.sourceforge.net/), в котором '[' является ключевым словом. – swasheck