Поделиться через


Диспетчер соединений с неструктурированными файлами

Диспетчер соединений с неструктурированными файлами дает возможность пакету получить доступ к данным неструктурированного файла. Например, исходные и целевые неструктурированные файлы могут использоваться диспетчерами соединений с неструктурированными файлами для извлечения и загрузки данных.

Диспетчер соединений с неструктурированными файлами получает доступ только к одному файлу. Чтобы ссылаться на несколько файлов, воспользуйтесь диспетчером соединений с несколькими неструктурированными файлами вместо обычного диспетчера соединений с неструктурированными файлами. Дополнительные сведения см. в разделе Multiple Flat Files Connection Manager.

Длина столбца

По умолчанию диспетчер соединений с неструктурированными файлами устанавливает длину строки столбцов, равную 50 символам. В диалоговом окне Редактор диспетчера соединений с неструктурированными файлами можно оценить образец данных и автоматически изменить длину этих столбцов во избежание обрезки данных или чрезмерной ширины столбцов. Пока не будет изменена длина столбцов в источнике неструктурированного файла или преобразования, длина строкового столбца в потоке данных останется неизменной. Если эти строки столбцов сопоставляются с более узкими целевыми столбцами, интерфейс пользователя выдаст предупреждение. Более того, во время выполнения могут появляться ошибки вследствие усечения данных. Во избежание ошибок или усечения можно изменить размер столбцов, чтобы они были совместимы с целевыми столбцами в диспетчере соединений с неструктурированными файлами, в источнике неструктурированного файла или в преобразовании. Чтобы изменить длину выходных столбцов, задайте Length свойство выходного столбца на вкладке Входные и выходные свойства диалогового окна Расширенный редактор.

Изменять выходные столбцы в источнике неструктурированного файла вручную нет необходимости, если обновить длину столбцов в диспетчере соединений с неструктурированными файлами после того, как будет добавлен и настроен источник неструктурированного файла, который использует диспетчер соединения. При открытии диалогового окна Источник «Неструктурированный файл» источник неструктурированного файла предоставляет параметр для синхронизации метаданных столбца.

Настройка диспетчера соединения с неструктурированными файлами

При добавлении диспетчера соединений с неструктурированными файлами в пакет SQL Server службы Integration Services создает диспетчер соединений, который будет разрешать подключение к неструктурированному файлу во время выполнения, задает свойства подключения к неструктурированному файлу и добавляет диспетчер соединений с неструктурированными файлами в Connections коллекцию пакета.

Свойству ConnectionManagerType диспетчера соединений присваивается значение FLATFILE.

По умолчанию диспетчер соединений с неструктурированными файлами всегда проверяет наличие разделителя строки в данных без кавычек и начинает новую строку при нахождении разделителя строки. Что позволяет диспетчеру соединений правильно анализировать файлы со строками, в которых пропущены поля столбцов.

В некоторых случаях отключение этой функции может улучшить производительность пакета. Эту функцию можно отключить, задав для свойства диспетчера соединений неструктурированных файлов AlwaysCheckForRowDelimiters значение False.

Настройте диспетчер соединений с неструктурированными файлами одним из следующих способов.

  • Укажите файл, локаль и используемую кодовую страницу. Локаль используется для интерпретации данных, зависящих от локаля, например дат, а кодовая страница используется для конвертации строковых данных в формат Юникод.

  • Укажите формат файла. Можно использовать форматы с разделителями, фиксированной шириной или без выравнивания по правому краю.

  • Укажите строку заголовка, строку данных и разделители столбцов. Разделители столбцов могут указываться на уровне файла и перезаписываться на уровне столбцов.

  • Определите, будет ли первая строка файла содержать имена столбцов.

  • Укажите символ ограничителя текста. Каждый столбец может быть настроен на распознавание текстового ограничителя.

    Теперь для внедрения квалификатора символа в заданную строку можно использовать символ ограничителя. Двойной экземпляр ограничителя текста интерпретируется как литерал, один экземпляр строки ограничителя. Например, если ограничитель текста — одинарная кавычка, а входные данные — 'abc', 'def', 'g'hi', то выходные данные будут иметь вид abc, def, g'hi.

  • Установите свойства, например имя, тип данных и максимальную ширину отдельных столбцов.

Можно задать свойство ConnectionString для диспетчера соединений с неструктурированными файлами, указывая выражение в окне "Свойства" SQL Server Data Tools (SSDT). Для предотвращения ошибок проверки выполните следующие действия.

  • Если для указания файла используется выражение, введите путь к файлу в поле Имя файла в редакторе диспетчера соединений с неструктурированными файлами.

  • Задайте свойство DelayValidation в диспетчере соединений с неструктурированными файлами равным True.

Можно использовать выражение для создания имени файла во время выполнения, применяя диспетчер соединений с неструктурированными файлами с назначением «Неструктурированный файл».

Значения свойств можно задавать с помощью конструктора Integration Services или программными средствами.

Дополнительные сведения о свойствах, которые можно задать в конструкторе служб Integration Services , см. в следующих разделах:

Дополнительные сведения о программной настройке диспетчера подключений см. в разделах ConnectionManager и Добавление соединений программным образом.