C#在连接字符串中自动使用PC名称

时间:2017-09-13 07:57:48

标签: c#

是否有可能将程序用于任何不更改连接字符串的计算机?顺便说一句,我使用Visual Studio 2008为我的数据库创建了一个Windows窗体应用程序和Microsoft SQL SERVER MANAGEMENT STUDIO 2012。

以下是我的一些代码,这是我的班级konek

class konek
{
    SqlConnection conn;
    public SqlConnection getConnect()
    {
         conn = new SqlConnection(@"Data Source='" + System.Windows.Forms.SystemInformation.ComputerName + "'\\SQLEXPRESS;Initial Catalog=it12-ProjectMedicalAssistance;Integrated Security=True");
         return conn;
    }
}

这是我将其用于我的其他窗口表单以供我访问数据库的方法

conn = koneksyon.getConnect();
conn.Open();

3 个答案:

答案 0 :(得分:3)

只需使用。\ SQLEXPRESS。的。 (点)已经相当于您的本地机器名称 - 答案为@ haim770的答案

Data Source=.\SQLEXPRESS;Initial Catalog=it12ProjectMedicalAssistance;Integrated Security=True

答案 1 :(得分:0)

您可以像这样使用连接字符串

Data Source=.\sqlexpress;Initial Catalog=test;Integrated Security=True

Data Source=(local)\sqlexpress;Initial Catalog=test;Integrated Security=True

。和(local)和YourMachineName都是等价的,指的是你自己的机器。

答案 2 :(得分:0)

在命名SQL Server实例的情况下,也可以在连接字符串中使用端口号,如下所示。您需要知道命名实例正在使用哪个端口。如果您知道端口号,那么甚至不需要实例名称。机器名称和端口号的组合足以进行SQL连接:

Data Source = (local),5122;Initial Catalog=test;Integrated Security=True

OR

Data Source = myMachineName,5122;Initial Catalog=test;Integrated Security=True

OR

Data Source = .,5122;Initial Catalog=test;Integrated Security=True

在我的机器上,命名实例正在使用端口#5122。