C#,SQL Server - 连接到本地服务器而不指定数据源

时间:2012-11-22 20:50:56

标签: c# sql-server connection-string

我正在编写一个c#应用程序。我连接到后端SQL Server进行一些处理。但是我今天遇到了一个奇怪的问题。这是我的代码:

static void Main(string[] args)
{
    SqlConnection con = new SqlConnection("Integrated Security=true");
    con.Open();

    SqlCommand cmd = new SqlCommand("SELECT SERVERPROPERTY('ProductVersion')", con);
    cmd.CommandType = CommandType.Text;

    SqlDataReader reader = cmd.ExecuteReader();
    reader.Read();

    Console.WriteLine(reader.GetString(0));
    Console.Read();
}

我没有在连接字符串中给出服务器名称,但它仍然连接到我的本地数据库并检索所需的数据。我想知道如何。默认数据源是否设置为本地计算机? “Integrated Security = true”与此有关吗?

有人可以解释一下吗?

谢谢, Sornakumar S

2 个答案:

答案 0 :(得分:4)

查看MSDN上ConnectionString上的文档,您可以找到此信息

  

要连接到本地计算机,请为服务器指定“(本地)”。如果一个   未指定服务器名称,将尝试连接   本地计算机上的默认实例。

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring(v=vs.100).aspx

答案 1 :(得分:2)

集成安全性意味着它使用当前用户的用户名和密码连接到本地SQL Server实例。
没有它,您将不得不指定特定的服务器,用户名和密码。

顺便说一句,不要在生产服务器上使用它,因为您可能会遇到错误。将web.config文件用于所有数据库设置。

希望这可以帮助。