0

我正在编写 ac# 应用程序。我连接到后端 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

4

2 回答 2

4

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

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

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

于 2012-11-22T21:02:41.677 回答
2

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

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

希望这可以帮助。

于 2012-11-22T20:59:24.127 回答