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


Соединение с источниками данных в компоненте скрипта

Диспетчер соединений — это удобный элемент, который инкапсулирует и сохраняет сведения, необходимые для соединения с источником данных определенного типа. Дополнительные сведения см. в разделе Соединения в службах Integration Services (SSIS).

Можно сделать существующие диспетчеры соединений доступными для пользовательского скрипта в компоненте источника или назначения, нажимая кнопки Добавить и Удалить на странице Диспетчеры соединений в окне Редактор преобразования «Скрипт». Однако необходимо написать собственный пользовательский код для загрузки и сохранения данных, а также, возможно, для открытия и закрытия соединения с источником данных. Дополнительные сведения о странице Диспетчеры соединений окна Редактор преобразования «Скрипт» см. в разделах Настройка компонента скрипта в редакторе компонента скрипта и Редактор преобразования «Скрипт» (страница «Диспетчеры соединений»).

Компонент скрипта создает класс коллекции Connections в элементе проекта ComponentWrapper, который содержит строго типизированный метод доступа для каждого диспетчера соединений, имя которого совпадает с именем самого диспетчера соединений. Эта коллекция доступна с помощью свойства Connections класса ScriptMain. Свойство метода доступа возвращает ссылку на диспетчер соединений как на экземпляр IDTSConnectionManager100. Например, если добавить диспетчер соединений с именем MyADONETConnection на странице «Диспетчеры соединений» диалогового окна, можно получить ссылку на него в скрипте, добавив следующий код:

Dim myADONETConnectionManager As IDTSConnectionManager100 = _

Me.Connections.MyADONETConnection

ПримечаниеПримечание

Прежде чем вызывать метод AcquireConnection, необходимо узнать тип соединения, возвращаемого диспетчером соединений. Поскольку в задаче «Скрипт» включен параметр Option Strict, перед использованием необходимо привести соединение, возвращаемое с типом Object, к подходящему типу соединения.

Далее, необходимо вызвать метод AcquireConnection конкретного диспетчера соединений, чтобы получить базовое соединение либо сведения, необходимые для соединения с источником данных. Например, с помощью следующего кода можно получить ссылку на соединение System.Data.SqlConnection, упакованное диспетчером соединений ADO.NET:

Dim myADOConnection As SqlConnection = _

CType(MyADONETConnectionManager.AcquireConnection(Nothing), SqlConnection)

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

Dim myFlatFile As String = _

CType(MyFlatFileConnectionManager.AcquireConnection(Nothing), String)

Затем необходимо предоставить этот путь и имя файла модулю чтения System.IO.StreamReader, или модулю записи Streamwriter для чтения, или записи данных в неструктурированный файл.

Важное примечаниеВажно!

При написании управляемого кода в компоненте скрипта нельзя вызывать метод AcquireConnection диспетчеров соединений, возвращающий неуправляемые объекты, например диспетчера соединений OLE DB или диспетчера соединений Excel. Однако можно считать свойство ConnectionString этих диспетчеров соединений и подключиться к источнику данных непосредственно в коде с помощью строки подключения объекта OLEDB connection из пространства имен System.Data.OleDb.

Если необходимо вызвать метод AcquireConnection диспетчера соединений, возвращающего неуправляемый объект, используйте диспетчер соединений ADO.NET. При настройке диспетчера соединений ADO.NET для использования поставщика OLE DB он соединяется с помощью поставщика данных .NET Framework для OLE DB. В этом случае метод AcquireConnection возвращает объект System.Data.OleDb.OleDbConnection вместо неуправляемого объекта. Чтобы настроить диспетчер соединений ADO.NET для работы с источником данных Excel, выберите «Поставщик OLE DB для Jet (Майкрософт)», укажите книгу Excel, а затем введите Excel 8.0 (для Excel 97 и более поздних версий) в качестве значения параметра Расширенные свойства на странице Все диалогового окна Диспетчер соединений.

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

Значок служб Integration Services (маленький) Будьте в курсе новых возможностей cлужб Integration Services

Чтобы получить новейшую документацию, статьи, образцы и видеоматериалы корпорации Майкрософт, а также лучшие решения участников сообщества, посетите страницу служб Службы Integration Services на сайте MSDN:


Чтобы получать автоматические уведомления об этих обновлениях, подпишитесь на RSS-каналы, предлагаемые на этой странице.

См. также

Задания

Создание диспетчеров соединений

Основные понятия

Соединения в службах Integration Services (SSIS)