c # Сервис для копирования данных между двумя серверами sql

1

У меня на моем компьютере установлены два SQL-сервера (SQL2008 EXPRESS), а также SQL2008, который поставляется с конкретным программным обеспечением, которое мы используем. Мне нужно сделать службу, которая работает все время и в определенное время обновляет несуществующие записи в SQL2008 EXPRESS из SQL2008. Можете ли вы предложить способ сделать это? В настоящее время лучшее, что я получил, это сделать локальную копию в файле excel, но это приведет к 365 файлам excel в год, которые я не считаю хорошей идеей :)

ps извините, если мой английский плохой :)

  • 3
    Учитывая, что вы используете Express, возможно настроить репликацию с SQL Express в качестве подписчика: technet.microsoft.com/en-US/library/ms165654(v=sql.90).aspx . Это избавит вас от необходимости вручную кодировать службы и вместо этого полагаться на внутренние функции SQL Server, специально предназначенные для передачи данных между различными базами данных.
  • 0
    Я посмотрю на ссылку, которую вы предложили, но, скорее всего, мне нужно будет сделать это по коду ...
Теги:

2 ответа

0

Я смущен, когда вы упоминаете Excel. Что бы Excel имел какое-либо отношение к перемещению данных из одной базы данных SQL в другую?

Короткий ответ: если вам нужна служба С#, тогда напишите службу С#, которая копирует данные непосредственно из одной базы данных в другую. Проблема, которую вы пытаетесь решить, не очень ясна.

Сказав все это, и с моим ограниченным пониманием проблемы, похоже, что вам нужно SQL-задание, которое планируется запустить один раз в день, копируя данные с одного сервера на другой. Поскольку это похоже на то, что они находятся на отдельных экземплярах, вам просто нужно настроить связанный сервер в исходной или целевой базе данных и либо нажимать, либо вытаскивать данные в правильную таблицу (таблицы).

РЕДАКТИРОВАТЬ:

Хорошо, поэтому, если служба Windows является требованием, это вполне приемлемо. Но, как я уже упоминал, вы должны забыть о Excel. Вы не захотите перейти из SQL-> Excel-> SQL, если у вас нет другой причины для существования данных в Excel.

Вот некоторая информация о создании службы Windows: Самый простой язык для создания службы Windows

Вот простой учебник по доступу к SQL на С#: http://www.codeproject.com/Articles/4416/Beginners-guide-to-accessing-SQL-Server-through-C

Если вы хотите получить более формальное решение (прочитайте: уровень доступа к данным), я бы указал вам на Entity Framework. Сложность проекта, вероятно, будет определяющим фактором для того, хотите ли вы просто выполнять SQL-запросы в своем коде, а не с полным DAL.

  • 0
    Ну, я сказал Excel, потому что это единственная резервная копия, которую я могу создать на данный момент :), и я думал об экспорте в Excel и после этого импорта на другой сервер, но это слишком большая работа ... Я попробую чтобы объяснить лучше .. У меня есть оба сервера на одном компьютере Server1 -. \ Data, Server2. \ MirrorData, теперь моя проблема в том, что я не очень хорош в программировании баз данных, и я не знаю, какой метод использовать копировать (или обновлять, если записи существуют) информацию с сервера данных на сервер зеркала. Все, что я знаю, это то, что это должна быть услуга .. требование рынка
  • 0
    Добавлены некоторые ссылки выше ...
Показать ещё 2 комментария
0

Для этого вам не нужно вручную создавать собственное программное обеспечение. Для этого есть сторонние инструменты, такие как OpenDbDiff или RedGate dbdiff. Эти инструменты генерируют дифференциальный sql, который можно применить к вашей целевой базе данных.

  • 0
    Да, я знаю, что существует множество бесплатных инструментов, но для этого проекта характерно, что он должен быть сделан вручную ... так что у меня нет выбора ...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню