.net中的SQL连接在客户端不起作用

时间:2013-09-05 04:37:06

标签: c#

connection a=new connection("Data Source= server name initial catalog = database name user Id=user1 password=user1");

我很困惑,当我在客户端服务器名称上部署.net桌面应用程序时,用户名和密码会有所不同,请告诉我我是.net的新用户

4 个答案:

答案 0 :(得分:0)

是,将连接字符串保留在设置文件中。并在部署时更新它。您可以在运行时读取连接字符串。

答案 1 :(得分:0)

1)检查连接字符串,缺少分号。

 String connectionString ="Data Source=(local);Initial Catalog=AdventureWorks;"
        + "User ID=sa;Password=xxx;Integrated Security=false;";
    SqlConnection con = new SqlConnection(connectionString );

2)通常我曾经在 App.config 中保留数据库配置并像

那样访问它

<强> App.config中:

<?xml version="1.0"?>
<configuration>
  <connectionStrings>
    <add name="CharityManagement" 
    connectionString="Data Source=XXXXXXXX;Initial Catalog=XXXXXXXXX;User ID=XXX;Password=XXXXX;Integrated Security=false;"/>
  </connectionStrings>
</configuration>

C#代码:

var connectionString=ConfigurationManager.ConnectionStrings["CharityManagement"].ConnectionString;
    SqlConnection connection = new SqlConnection(connectionString.ToString());

因此,客户可以在 App.config 中更改数据库配置,并在运行时进行处理。

<强>更新

  

会发生什么样的变化?

  1. 这取决于客户端数据库。
  2. 客户可能有不同的DatasourceAuthentication
  3. 如果 SQL身份验证 =&gt;客户必须使用Integrated Security=false提供用户ID和密码 否则如果窗口身份验证 =&gt; Integrated Security=true
  4. 不需要用户名和密码

答案 2 :(得分:0)

确保您使用的是服务器的IP地址或正确的域名,因为如果您使用服务器名称或本地主机,如果客户端不是本地网络的一部分,则无法连接到服务器。

答案 3 :(得分:0)

1.非常简单,因为人们之前说过将您的连接字符串保存在App.config文件中,您可以轻松访问代码中的连接字符串。 SqlConnection conn = new SqlConnection(); conn.ConnectionString = System.Configuration.ConfigurationSettings.AppSettings [“DBConnectionString”]; “DBConnectionString”将成为您在App.config中的一部分 2.现在,当您将应用程序部署到客户端计算机时,只需根据客户端环境更改App.config文件中的连接字符串。