Предположим, SQL Server 2005 +.
Часть A:
Каков канонический способ запроса из системы / внутренних / мета / любых таблиц / представлений (извините, не ниндзя базы данных) для любого пользователя таблицы или столбец имена, которые используют ключевые слова SQL Server (например, case
)?
Я не против вести список ключевых слов, если он не поддерживает запросы, так как он меняется только с поддерживаемыми версиями SQL Server (верно?).
Глядя на доступные представления в SQL Server 2005, я достаточно легко могу запросить эту информацию из INFORMATION_SCHEMA.COLUMNS
и INFORMATION_SCHEMA.TABLES
, но я хочу быть уверен, что она из наилучшего возможного местоположения для проверки на будущее.
Часть B:
Можно ли получить список ключевых слов по запросу?
ОБНОВЛЕНИЕ: Хотя это полезная концепция, я специально не заинтересован в экранировании названий столбцов / таблиц / и т. Д., Так как я надеюсь написать инструмент, который будет проверьте таблицы / столбцы / и т. д., которые имеют общие имена с ключевыми словами и предоставляют полезные предупреждения разработчикам. Этот инструмент будет использоваться во время проверки кода в моем офисе, чтобы указать, что разработчик может захотеть переименовать объект. (Или, надеюсь, разработчик до рецензирует код для собственного блага!) Я могу даже настроить его для использования с непрерывной интеграцией в мои скрипты сборки, но это всего лишь мысль на будущее.