我正在编写一个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
答案 0 :(得分:4)
查看MSDN上ConnectionString上的文档,您可以找到此信息
要连接到本地计算机,请为服务器指定“(本地)”。如果一个 未指定服务器名称,将尝试连接 本地计算机上的默认实例。
答案 1 :(得分:2)
集成安全性意味着它使用当前用户的用户名和密码连接到本地SQL Server实例。
没有它,您将不得不指定特定的服务器,用户名和密码。
顺便说一句,不要在生产服务器上使用它,因为您可能会遇到错误。将web.config文件用于所有数据库设置。
希望这可以帮助。