C# 如果SQL Server 2005不是';没有安装?

C# 如果SQL Server 2005不是';没有安装?,c#,.net,sql-server-2005,sql-server-ce,C#,.net,Sql Server 2005,Sql Server Ce,有没有办法做到这一点 更新:对不起,我应该包括更多信息。我正在尝试使用C#中的System.Data.SqlServerCe在PC上运行(即不在Windows Mobile设备上运行)来创建并连接SQL CE数据库 此代码: string connstr = "Data Source=\"" + filename + "\";Persist Security Info=False;"; System.Data.SqlServerCe.SqlCeEngine engine = new S

有没有办法做到这一点

更新:对不起,我应该包括更多信息。我正在尝试使用C#中的
System.Data.SqlServerCe
在PC上运行(即不在Windows Mobile设备上运行)来创建并连接SQL CE数据库

此代码:

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

。。。在安装了SQL Server 2005的任何PC上都可以正常工作,但在未安装SQL Server 2005的任何PC上都会出现故障。我正在尝试找出是否有任何方法可以在计算机上不安装SQL Server 2005的情况下使其工作。

您可以使用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编写的代码在普通目标计算机上成功运行,您需要在其上安装一些东西,尽管不是SQL Server 2005。SQL CE是一个单独的产品()。如果/当您为产品创建MSI安装程序时,它还应显示为Visual Studio中的可再发行模块。

您可以使用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编写的代码在普通目标计算机上成功运行,您需要在其上安装一些东西,尽管不是SQL Server 2005。SQL CE是一个单独的产品()。如果/当您为您的产品创建MSI安装程序时,它还应显示为Visual Studio中的可再发行模块。

只是补充一下,要连接到SQL CE数据库程序,您不需要安装SQL Server。CE在proc中运行,只要安装了SqlCE dll(它们现在是框架的一部分),您就应该能够毫无问题地连接到它。

只需补充一下,要连接到SQL CE数据库程序,您也不需要安装SQL Server。CE在proc中运行,只要安装了SqlCE dll(它们现在是框架的一部分),您就应该能够毫无问题地连接到它。

我想您的意思是,您可以使用工具而不是代码创建一个。Studio只需转到服务器资源管理器并添加一个新连接即可创建它们(您将获得创建一个连接的选项)

如果你正在寻找更好的或者不需要Studio的东西,那么这是一个非常好的工具

编辑

如果您需要通过代码创建它,那么是的,您仍然可以在不安装服务器的情况下创建它。确保已将SQL CE可再发行二进制文件(适用于正确的32/64位)部署到目标系统,并将其部署在应用程序可以找到的位置

本地见

C:\ProgramFiles(x86)\Microsoft SQL 服务器压缩版\v3.5


.

我想你的意思是,你可以用工具而不是代码创建一个。Studio只需转到服务器资源管理器并添加一个新连接即可创建它们(您将获得创建一个连接的选项)

如果你正在寻找更好的或者不需要Studio的东西,那么这是一个非常好的工具

编辑

如果您需要通过代码创建它,那么是的,您仍然可以在不安装服务器的情况下创建它。确保已将SQL CE可再发行二进制文件(适用于正确的32/64位)部署到目标系统,并将其部署在应用程序可以找到的位置

本地见

C:\ProgramFiles(x86)\Microsoft SQL 服务器压缩版\v3.5


.

对不起,我的意思是用代码创建一个。我刚刚发现一个客户的生产机器没有SQL Server 2005的许可证,所以我正忙着想办法让SqlCE来处理它,或者替换它(Oracle Lite已经上市了,我正在研究SQLite)。这肯定会奏效吗?我试着在7个sqlce上复制。。。将DLL导入服务器上的SYSTEM32文件夹,但这不起作用。我需要完全安装sql ce?100%正。我们有一个桌面应用程序,使用SQL CE进行数据收集和错误存储,这就是我们所做的一切,包括应用程序安装程序中的二进制文件。适用于32位和64位,没问题。FWIW,我从未将它们放在System32中,我将所有本机二进制文件和托管程序集都放在我的应用程序文件夹中。哇,谢谢。我刚刚在服务器上运行了3.5安装程序,一切正常。你用过SQLite吗?你知道它在文件大小和速度方面的比较吗?另外,我的内存是否让我无法想象SQLServer2005曾经是桌面上SqlCE的一个需求?或者我只是在想RDA?对不起,我的意思是用代码创建一个。我刚刚发现一个客户的生产机器没有SQL Server 2005的许可证,所以我正忙着想办法让SqlCE来处理它,或者替换它(Oracle Lite已经上市了,我正在研究SQLite)。这肯定会奏效吗?我试着在7个sqlce上复制。。。将DLL导入服务器上的SYSTEM32文件夹,但这不起作用。我需要