У нас есть POS-система с базой данных Firebird, а остальная часть бизнеса находится на SYSPRO, которая основана на SQL Server.Firebird FDB Linked Server SSMS
Я хотел бы запускать запросы и представления между базами данных, поскольку обе базы данных имеют уникальные ключи, которые можно сопоставить.
Я делаю это через связанный сервер? Я попробовал несколько вариантов связанного сервера, и я продолжаю получать различные сообщения об ошибках. Так что это то, что я до сих пор:
EXEC master.dbo.sp_addlinkedserver
@server = N'OMNI',
@srvproduct=N'OMNI',
@provider=N'MSDASQL',
@datasrc=N'C:\Omni\Company\Data\databasefile.FDB',
@provstr=N'Driver={Firebird/InterBase(r) driver};Dbname=C:\Omni\Company\Data\databasefile.FDB;CHARSET=NONE;UID=SYSDBA;'
Я также попытался подключения с помощью Excel, и я могу увидеть базу данных и просматривать таблицы, используя следующую строку соединения:
Provider=MSDASQL.1;Persist Security Info=True;Data Source=Omni;Extended Properties="DSN=Omni;Driver={Firebird/InterBase(r) driver};Dbname=C:\Omni\Company\Data\databasefile.FDB;CHARSET=NONE;UID=SYSDBA;";Initial Catalog=Omni
Linked серверы могут быть ненадежными. Распределенные запросы (через связанные серверы) обычно выполняются довольно плохо. Это полностью действительный подход к репликации данных Firebird в базу данных SQL Server и просто выполнение кросс-запросов к базе данных. Тогда вы можете обнаружить, что хотите занять это место и создать хранилище данных. –
Эй, Ник. Спасибо за ответ. Итак, какой был бы лучший подход к тиражированию баз данных? Создать временную задачу SQL Sever Agent для проверки новых данных? Мой опыт во всем этом заключается в том, что я могу создавать запросы, но реплицировать, триггеры и те вещи, которые мне все еще нужно изучать. ;-) –
Какие ошибки вы получаете? –