【问题标题】:I want to create a shared database c# windows form application?我想创建一个共享数据库 c# windows 窗体应用程序?
【发布时间】:2019-11-10 11:28:38
【问题描述】:

我正在尝试创建的此应用程序,其“实例/副本”将安装在客户端的多台 PC 上,并且能够从同一客户端的另一台 PC 访问同一数据库,该客户端始终运行 SQL Server通过相同的网络(即:它们具有相同的路由器和服务器的静态 IP 等)。

我有两种方法可以做到这一点:

  1. 通过同步使应用程序使用同一个数据库。
  2. 拥有多个本地数据库,然后共享数据库服务器的更改。

按照第一种方式,

我尝试设置连接字符串,如:

SqlConnection con = new SqlConnection("Data Source =[serverPcIP,Port];Integrated Security=True;Connect Timeout=30");

SqlConnection con = new SqlConnection("SERVER=[serverPcIP]; Port=[portno];Integrated Security=True;Connect Timeout=30");

在服务器 - 安全设置中: 我已允许“SQL Server 和 Windows 身份验证模式

在 Sql Server 配置管理器 > SQL Server 网络配置 > SQLEXPRESS 的协议 => TCP/IP = 已启用;在 IP 地址 -> IP1 -> TCP 端口 = 1433(我在连接字符串中使用的端口)

在高级防火墙设置中:

已启用端口 1433 的传入和传出规则。

我得到的异常:

其他信息:在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:TCP Provider,错误:0 - 等待操作超时。)

谁能告诉我我缺少什么配置(连接字符串或 SQL 服务器本身)?

【问题讨论】:

  • Mr.AF 还是同样的错误,我做了什么:Data Source=192.168.0.107,1433\\SQLEXPRESS;
  • sql server agent 可能被关闭了
  • 当您解决连接问题时,我感觉您会遇到集成安全问题。这些桌面是域的成员吗?您是否为登录名和用户配置了数据库安全性?安装sqlexpress的账号不会有问题,其他账号默认会。

标签: c# sql-server sql-server-2012-express database-connectivity sql-server-config-manager


【解决方案1】:

您的连接字符串缺少实例名称,例如数据源=\SQLEXPRESS。如果您的数据库在默认端口 1433 上侦听,则无需使用连接字符串传递它

如果您设置 SQL Server,您可以在默认 SQL Server 实例或命名实例之间进行选择。对于 SQL Express,默认安装名称为 SQLEXPRESS 的命名实例。如果您不使用默认实例并安装命名实例,则必须将其与连接字符串一起传递。

默认 SQL Server 实例只是一个具有众所周知的名称 MSSQLSERVER 的命名实例。因此,如果您将数据库实例安装为默认实例,您可以使用 [,port]\MSSQLSERVER[,port]

进行连接

【讨论】:

    【解决方案2】:

    根据您的屏幕截图,在 IP1 下,IP 地址处于活动状态但未启用。

    另外,以 169.x.x.x 开头的 IP 地址通常意味着您已将此网卡设置为使用 DHCP,但该网卡无法从 DHCP 服务器获得 IP 地址。

    你介意尝试使用静态 IP 地址吗?

    【讨论】:

      【解决方案3】:

      考虑以下步骤:

      1. 由于您使用配置管理器提到了端口号,因此需要重新启动服务。如果不这样做,请重新启动服务。
      2. 似乎you are able to connect通过SSMS,一旦服务重新启动,通过SSMS -> Managemnt -> SQL Server Logs验证SQL错误日志,你必须找到如下消息:
      Server is listening on [ 'any' <ipv4> 1433].
      

      更多详情,follow these steps。另外,this..

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2023-02-10
        • 1970-01-01
        • 2011-11-01
        • 2020-09-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-24
        相关资源
        最近更新 更多