Извлечение данных Sybase в SQL Server
-
09-09-2019 - |
Вопрос
У меня есть приложение ASP.NET, которое использует базу данных SQL Server.Теперь мне нужно извлечь данные из Sybase ASE в эту базу данных SQL Server, чтобы мое приложение могло их использовать, и мои идеи не увенчались успехом.
Кто-нибудь сделал это?Есть идеи/предложения/советы?
Решение
Вы можете настроить связанный сервер с SQL Server на Sybase.Использование поставщика Sybase на стороне MS должно быть довольно простым.
Другие советы
Хорошо, я наконец (методом проб и ошибок) нашел, как связать мой сервер Sybase ASE (12.5) с моим SQL Server (2008), что позволит осуществить желаемую интеграцию.Вот примерно как я это сделал:
- Выполнен вход в диспетчер конфигурации Sybase ASE OLE DB (это похоже на Sybase-версию источников данных ODBC для Windows) и добавлен источник данных OLE DB.Я считаю, что для этого вы должны быть администратором на ПК.
- В SQL Server 2008 Management Studio перейдите в раздел «Объекты сервера» > «Связанные серверы».Щелкните правой кнопкой мыши и выберите «Новый связанный сервер».
- В свойствах связанного сервера я установил следующие свойства:
- Общий:
- --Связанный сервер:имя вашего связанного сервера, которое вы хотите, чтобы оно отображалось в списке связанных серверов
- --Поставщик:Выбирать Поставщик Sybase ASE OLE DB из раскрывающегося списка.
- --Наименование товара:Точное имя источника данных OLD DB, который вы только что создали в Sybase ASE OLE DB Configuration Manager.
- --Источник данных:То же, что и название продукта.
- --Строка поставщика:я оставил это пустым
- --Расположение:я оставил это пустым
- --Каталог:База данных по умолчанию (главная или какая-то другая) для входа в систему.
- Безопасность:
- --Вам необходимо сопоставить действительный вход в систему SQL Server с действительным входом в Sybase.Я не использовал олицетворение (которое обеспечивает сквозную передачу учетных данных).
- --Я выбрал свое соединение Быть сделанным без использования контекста безопасности.
- Опции сервера:
- --Все настройки по умолчанию у меня сработали.
Стандартная справка по SQL Server работала довольно хорошо в качестве руководства.Хотя это не всегда так, Формула 1 была здесь моим другом.
Теперь я могу выполнять распределенные запросы, пакеты DTS или SSIS и использовать SSRS.Это отнимает много сил у Sybase ASE.
Конечно, вышеописанное можно сделать через командную строку, используя sp_linkserver, но графический интерфейс более удобен для такого скромного разработчика, как я.
Используйте Management Studio или Enterprise Manager для импорта данных с помощью мастера импорта данных.Вот и все, просто убедитесь, что вы выбрали правильного поставщика данных в мастере, и все готово.
Если вы хотите, чтобы это была прямая трансляция, создайте небольшую службу Windows для управления обменом информацией.Это должно быть относительно просто сделать: с вашей стороны нужно лишь немного поработать ногами.Если вы против этого, есть множество готовых решений, которые могут сделать это за вас.
Вопрос немного расплывчатый по конкретике:
- Это однократное преобразование или часть повторяющегося процесса?
- Доступен ли исходный компьютер с вашего целевого компьютера (можете ли вы соединить их или вам нужно читать файлы)
Большинство преобразований состоят из двух частей:
- Физическая доставка данных из источника в пункт назначения.
- Сопоставление данных из источника в целевые таблицы.
Без дополнительной информации сложно давать какие-либо рекомендации.То, что было бы хорошо для однократного преобразования, не сработает, если вам нужно считывать данные весь день каждый день.Кроме того, если к исходной базе данных невозможно подключиться и вам необходимо передать файлы, методы изменяются.