Синхронизация клиентского сервера базы данных в VB 2010

Я создаю приложение VB2010, для которого потребуется подключение к MSSQL. Должен ли я установить SQL 2008 на свой компьютер, а затем использовать MS SQL 2008 в качестве источника данных или пропустить установку SQL 2008 и вместо этого использовать MDF?

Также программа должна иметь следующее требование

  1. Программа должна использовать SQL в качестве источника базы данных.
  2. Конечный пользователь не должен устанавливать SQL-сервер на свой компьютер
  3. Программа должна иметь возможность обновлять (синхронизировать) локальную базу данных SQL с SQL-сервера в Интернете. (У пользователя будет возможность удалить все в своей локальной базе данных и загрузить все свежее с сервера или объединить обновление с существующими данными)
  4. Программы (в большинстве случаев) работают в автономном режиме. Когда у пользователя есть доступ к Интернету, он может обновить базу данных.
  5. Программа должна позволять пользователю добавлять, редактировать, удалять свою локальную базу данных в автономном режиме.
  6. Только определенный пользователь (авторизованный пользователь) может обновить свою локальную базу данных обратно на serverC.

Можно ли создать программу, отвечающую всем вышеуказанным требованиям?

Если да, не могли бы вы уточнить, как я могу выполнить все пункты

Большое спасибо


person chmod    schedule 24.03.2012    source источник


Ответы (1)


вместо МДФ?

Файл MDF является сервером Sql.

Конечный пользователь не должен устанавливать SQL-сервер на свой компьютер

а также

Программа должна иметь возможность обновлять (синхронизировать) локальную базу данных SQL с SQL-сервера в Интернете.

В этом случае я рекомендую Sql Server Compact Edition. Он совместим с обновлением до полного Sql Server, что упростит операции синхронизации, но не требует установки полного механизма Sql Server в локальной системе.

person Joel Coehoorn    schedule 24.03.2012
comment
для SQL Server CE конечный пользователь все равно должен будет установить его правильно? Мне нужно решение, которое не требует от конечного пользователя установки или настройки чего-либо. Они должны просто скачать программу и запустить ее. Больше ничего. - person chmod; 24.03.2012
comment
В этом случае у вас есть варианты MS Access (механизм доступа встроен в Windows) и Sqlite, который позволяет вам включить движок в ваш исходный код. Ни один из вариантов не совместим напрямую с сервером sql: оба потребуют от вас написания кода перевода. - person Joel Coehoorn; 25.03.2012
comment
Могу ли я использовать MDF с программой? и реплицировать его с помощью SQL Server в Интернете? или экспортировать данные с SQL-сервера, а затем импортировать их локально? (загрузите файл .sql, затем запустите его локально, чтобы он обновил MDF на клиентской машине) - person chmod; 25.03.2012
comment
Вам необходимо установить Sql Server, чтобы иметь возможность использовать файлы mdf. - person Joel Coehoorn; 25.03.2012
comment
О. Спасибо, я этого не знал. Значит, единственный способ интегрировать базу данных с приложением — использовать Access? Возможно ли написать код для преобразования SQL в доступ? Или я могу создать программу установки, которая автоматически установит и настроит SQL Server Express. Будет ли теперь возможно обновление с SQL сервера? - person chmod; 25.03.2012
comment
Есть альтернатива. LocalDB — это SQLServer Express 2012 с простыми шагами установки. SQL Server 2012 Express LocalDB. И посмотрите на мой вопрос здесь. Однако вам нужно будет предоставить процедуру установки для вашего приложения. - person Steve; 25.03.2012
comment
Спасибо, Стив. Как я могу обновить (синхронизировать) базу данных в LocalDB и SQL Server? - person chmod; 25.03.2012