1

我编写了一个 C# windows 应用程序表单,它在客户端机器上运行并连接到另一台机器上的 SQL 服务器。在 C# 中建立连接时,我使用了 dll,例如

1)microsoft.sqlserver.management.smo. 2)microsoft.sqlserver.management.connectioninfo 3)microsoft.sqlserver.management.sdk.sfc

构建应用程序的客户端计算机上安装了 sql server。所以导入和访问 dll 不是问题。

但是,在我要运行 C# Windows 应用程序的另一台客户端计算机上,不会安装 SQL Server。

那么它会导致问题吗。由于没有sql server,该客户端计算机上的连接会失败吗?

如果是,那么在没有在该客户端机器上安装 sql server 的情况下解决问题的方法是什么。

PS:我事先要求避免安装当天的最后一分钟麻烦。

4

3 回答 3

3

连接到 SQL 服务器所需的部分内置于 .net 框架中。只要您在编写客户端代码时使用了这些,您就可以在客户端上不安装 MSSQL 的情况下连接到 SQL 数据库。

using System.Data;
using System.Data.SqlClient;

SqlClient

PS:我事先要求避免安装当天的最后一分钟麻烦。

您应该始终首先在本地进行测试。您可能会得到一台随机测试机器来验证一切是否顺利。

于 2013-08-15T17:02:38.577 回答
1

那么它会导致问题吗。由于没有sql server,该客户端计算机上的连接会失败吗?

不,只要您在应用程序中安装了所有必需的 dll。

连接到另一台机器上的 SQL Server

虽然不是一个好的选择。我建议您使用一些中间层连接到数据库。也许是网络服务。以下架构的东西。

GUI-->Webservices-->DataBase
于 2013-08-15T17:04:48.890 回答
0

在客户端机器上安装时,您需要确保部署服务器管理对象可再发行组件( )。SharedManagementObjects.msi

这将安装 SMO 类,而无需安装完整的 Sql Server 安装。

Microsoft SQL Server 2008 管理对象

SQL Server 管理对象 (SMO) 是一个 .NET Framework 对象模型,它使软件开发人员能够创建客户端应用程序来管理和管理 SQL Server 对象和服务。此对象模型适用于 SQL Server 2000、SQL Server 2005 和 SQL Server 2008。
注意: Microsoft SQL Server 2008 管理对象集合需要Microsoft Core XML Services (MSXML) 6.0、Microsoft SQL Server Native Client 和 Microsoft SQL Server System CLR 类型. 这些可在此页面上找到。

于 2013-08-15T17:12:27.863 回答