Могу ли я создать базу данных SQL Server CE и подключиться к ней, если SQL Server 2005 не установлен? - PullRequest
1 голос
/ 30 апреля 2010

Есть ли способ сделать это?

Обновление: Извините, мне следовало добавить больше информации. Я пытаюсь создать базу данных SQL CE и подключиться к ней с помощью System.Data.SqlServerCe в C #, работающем на ПК (т.е. не работающем на устройстве с Windows Mobile).

Этот код:

string connstr = "Data Source=\"" + 
    filename + "\";Persist Security Info=False;";
System.Data.SqlServerCe.SqlCeEngine engine = new SqlCeEngine(connstr);
engine.CreateDatabase();

... отлично работает на любом компьютере, на котором установлен SQL Server 2005, но не работает на любом компьютере, на котором он не установлен. Я пытаюсь выяснить, есть ли способ заставить это работать без установленного на компьютере SQL Server 2005.

Ответы [ 3 ]

2 голосов
/ 30 апреля 2010

Это можно сделать с помощью Visual Studio - при добавлении соединения измените источник данных с Microsoft SQL Server на Microsoft SQL Server Compact 3.5.

Кроме того, если вы имеете в виду фактический сервер - в отличие от инструментов управления - тогда SQL Server 2008 Management Studio [Express] может напрямую открывать базы данных SQL CE.

Редактировать: Чтобы создать базу данных в Visual Studio, выберите «Локальная база данных» при добавлении нового элемента. Это база данных SQLCE. А в SSMS [E], когда вы выбираете опцию SQL Server Compact, вы можете выбрать «Новая база данных» в качестве опции в раскрывающемся списке «Файл базы данных».

Edit2: для того, чтобы код, написанный для SQL CE, успешно выполнялся на целевой машине vanilla, вам нужно будет установить на нее что-то , но не SQL Server 2005. SQL CE - это отдельный продукт страница загрузки ). Он также должен отображаться как распространяемый модуль в Visual Studio, если / когда вы создаете установщик MSI для вашего продукта.

1 голос
/ 30 апреля 2010

Я предполагаю, что вы имеете в виду, можете ли вы создать его с помощью инструмента, а не с помощью кода. Studio может создать их, просто зайдя в обозреватель сервера и добавив новое соединение (у вас будет возможность его создать).

Если вы ищете что-то более приятное или не требующее Studio, тогда Консоль порта данных Primeworks - действительно хороший инструмент.

EDIT

Если вам нужно создать его с помощью кода, тогда да, вы все равно можете сделать это без установленного Сервера. Убедитесь, что у вас есть распространяемые двоичные файлы SQL CE (для надлежащих 32/64-битных), развернутые в целевой системе и в том месте, где приложение может их найти.

См. Локально на

C: \ Program Files (x86) \ Microsoft SQL Server Compact Edition \ v3.5

или онлайн .

1 голос
/ 30 апреля 2010

Просто чтобы добавить к тому, что говорил Aaronaught , для программного подключения к базе данных SQL CE вам также не нужно устанавливать SQL Server. CE работает в proc, и до тех пор, пока установлены DLL-библиотеки SqlCE (в настоящее время они являются частью фреймворка), вы сможете без проблем подключаться к нему.

...