2015-04-30 6 views
0

Я искал везде, однако не нашел прямого ответа.Обновление после развертывания

Я развернул приложение WinForms C# .NET, которое использует базу данных LocalDb SQL Server 2012 Express. Таким образом, база данных представляет собой файл данных, содержащийся в проекте. Я хотел бы добавить несколько столбцов в несколько таблиц, и поскольку проект развертывается у большого количества клиентов, я бы хотел отправить им сценарий или файл какого-либо типа, и после их запуска их база данных будет имеют эти изменения.

Как это можно сделать? SQL Management Studio не существует, поэтому пользователи не могут войти в систему и запустить там скрипт. Мне это нужно для запуска на основе LocalDB, и не может найти какие-либо решения онлайн

+0

Если ваш клиент все машины находятся в локальной сети, тогда вы можете сделать одно, просто chenge в мастер-машине/где sql установил изменения в нем. Автоматически исправления были сделаны на всех клиентских ПК – Vidhi

+0

, связанных с пользователями следующий вопрос: http: //stackoverflow.com/questions/29965381/connect-to-database-from-sqlcmd, возможно дубликат. – Tanner

ответ

0

Я хотел бы рассмотреть пакетный файл, который выполняет SQL скрипты, например, так:

sqlcmd -S <ComputerName>\<InstanceName> -i C:\Temp\ClearTables.sql 

This статья дает достаточно хороший ответ.

+0

Как я могу выбрать экземпляр, если у клиентов установлен только localDB, и это локальный файл данных, включенный в проект? – intense

+0

Во-первых, это не очень хороший дизайн для меня. Но если на компьютере есть сервер SQL, то вы должны убедиться, что вы просто правильное имя компьютера (может быть IP-адрес тоже) и экземпляр. Примерами могут быть: SQLCMD -S "(LocalDB) \ \ MySharedInstance." SQLCMD -S "\ MySharedInstance." SQLCMD -S "(LocalDB) \ MySharedInstance" SQLCMD -S "GREENHORNET \ MySharedInstance" Sqlcmd -S " . \ LOCALDB # SH04FF8A " sqlcmd -S" GREENHORNET \ LOCALDB # SH04FF8A " – hbulens

+0

У клиентов нет установки экземпляра, строка подключения выглядит так: connectionString =" Источник данных = (LocalDB) \ v11.0; AttachDbFilename = | DataDirectory | \ db.mdf; Integrated Security = True " providerName =" System.Data.SqlClient " Так как он использует файл данных, я не могу подключиться к нему через sqlcmd с общим экземпляром. Как я могу подключиться к файлу данных? – intense

Смежные вопросы