C#使用exe

时间:2016-04-02 07:25:26

标签: c# sql-server exe

我的目标是创建一个独立的C#Windows窗体应用程序,它将连接到SQL Server。

我必须在不同的客户端计算机上部署此独立文件。

考虑我有两台机器 - 机器A和B。

在机器A上,我安装了SQL Server 2008 R2和VS2013进行开发。

我用于开发的连接字符串:

Data Source=AssetName\SQLEXPRESS;Initial Catalog=Test_Database;Integrated Security=True

在机器A上工作正常。当我在机器B上尝试相同时,它没有连接到机器A上的SQL Server。

当我在互联网上搜索时,我得到了许多建议在VS中使用基于服务的数据库的参考资料。但是我发现很难理解基于服务的数据库是如何工作的。我无法在服务器和基于服务的数据库之间看到任何连接。

任何人都可以帮我吗?

另外请告诉我连接机器A上的SQL Server我是否需要在机器B上使用SQL Server Management Studio?

错误消息:

  

System.Data.SqlClient.SqlException(0x80131904):在建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。

3 个答案:

答案 0 :(得分:1)

尝试在计算机A中配置您的服务器以允许从其他计算机进行访问。 通常你必须使用你的机器一个地址ip作为服务器名称与sql服务器实例名称从其他机器连接。

答案 1 :(得分:1)

SQL Server Express 默认情况下不允许远程连接 - 您需要明确启用此功能。

为此,请使用以下步骤:

  • 在SQL Server Management Studio中,转到对象资源管理器
  • 右键单击顶级节点(代表SQL Server Express实例 - 通常标记为......\SQLEXPRESS
  • Properties对话框中,转到左侧的Connections标签
  • 选中复选框Allow remote connectìons

enter image description here

  • 重新启动SQL Server Express实例

现在,您应该可以使用MACHINENAME\SQLEXPRESS作为服务器/实例名称从远程计算机连接到此SQL Server Express实例。

答案 2 :(得分:0)

尝试连接已经过验证的MS-SQL客户端,我使用MS SQL Management Studio 连接窗口有几个选项,您可以检查防火墙是否阻止访问,"广播"命名服务是活跃的等 也许问题不在客户端,而是服务器端(TCP-IP禁用,非IP监听范围......更多情况)。

谁是SQL Server的管理员?什么1433端口?是否启用了TCP-IP?大多数版本的默认值不是。

在下一阶段管理将是有用的,即设计查询等。