Вопрос

У меня есть приложение 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 для управления обменом информацией.Это должно быть относительно просто сделать: с вашей стороны нужно лишь немного поработать ногами.Если вы против этого, есть множество готовых решений, которые могут сделать это за вас.

Вопрос немного расплывчатый по конкретике:

  • Это однократное преобразование или часть повторяющегося процесса?
  • Доступен ли исходный компьютер с вашего целевого компьютера (можете ли вы соединить их или вам нужно читать файлы)

Большинство преобразований состоят из двух частей:

  • Физическая доставка данных из источника в пункт назначения.
  • Сопоставление данных из источника в целевые таблицы.

Без дополнительной информации сложно давать какие-либо рекомендации.То, что было бы хорошо для однократного преобразования, не сработает, если вам нужно считывать данные весь день каждый день.Кроме того, если к исходной базе данных невозможно подключиться и вам необходимо передать файлы, методы изменяются.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top