Если какое-либо имя таблицы или имя столбца содержит зарезервированное слово базы данных, например MONTH или YEAR, сеанс завершается с ошибкой базы данных, когда служба интеграции выполняет SQL для базы данных. Вы можете создать и поддерживать зарезервированный файл слов, reswords.txt, в каталоге server/bin. Когда служба интеграции инициализирует сеанс, она ищет файл reswords.txt. Если файл существует, служба интеграции заключает в кавычки совпадающие зарезервированные слова при выполнении SQL для базы данных.
Используйте следующие правила и рекомендации при работе с зарезервированными словами.
Служба интеграции выполняет поиск в файле зарезервированных слов при создании SQL для подключения к исходной, целевой базе данных и базе данных поиска.
Если вы переопределяете SQL для источника, цели или поиска, вы должны заключить любое зарезервированное слово в кавычки.
Возможно, вам потребуется включить некоторые базы данных, такие как Microsoft SQL Server и Sybase, для использования стандартов SQL-92 в отношении идентификаторов в кавычках. Используйте среду соединения SQL для выполнения команды. Например, используйте следующую команду с Microsoft SQL Server:
SET QUOTED_IDENTIFIER ON
Образец файла reswords.txt Чтобы использовать файл зарезервированных слов, создайте файл с именем reswords.txt и поместите его в каталог server/bin. Создайте раздел для каждой базы данных, для которой вам нужно хранить зарезервированные слова. Добавьте зарезервированные слова, используемые в любой таблице или имени столбца. Вам не нужно хранить в этом файле все зарезервированные слова для базы данных. Имена баз данных и зарезервированные слова в reswords.txt не чувствительны к регистру.
Ниже приведен пример файла reswords.txt:
[Teradata] МЕСЯЦ ИНТЕРВАЛ ДАТЫ [Oracle] ОПЦИЯ СТАРТ [DB2] [SQL Server] ТЕКУЩИЙ [Informix] [ODBC] МЕСЯЦ [Sybase]
person
Community
schedule
23.02.2015