2011-12-10 38 views
0

我目前在C#上学习ADO.NET。我正在通过我在网上找到的一本书和教程学习。我想尝试一些示例来熟悉整个SQL连接和命令对象等等。因此,我试过这个:我无法连接到我的本地SQL Server数据库

namespace ConsoleApplication 
{ 
    class SqlDemo 
    { 
     public void InitConnection() 
     { 
      string connString = @"data source=C:\SQL Server 2000 Sample Databases; database=northwnd; integrated security=SSPI"; 
      SqlConnection conn = null; 

      try 
      { 
       conn = new SqlConnection (connString); 
       conn.Open(); 
       Console.WriteLine ("DataBase connection established"); 
      } 
      catch 
      { 
       Console.WriteLine ("DataBase connection not established"); 
      } 
      finally 
      { 
       if (conn != null) conn.Close(); 
      } 

      Console.ReadKey (true); 
     } 

     static void Main (string[] args) 
     { 
      SqlDemo d = new SqlDemo(); 
      d.InitConnection(); 
     } 
    } 
} 

不管我怎么试,我都可以连接到本地数据库。 "data source=(local)"不起作用。

+0

欢迎StackOverflow上:如果您发布的代码,XML或数据样本,** **请在高亮文本编辑器的线,然后单击“代码示例”按钮('{}')在编辑器工具栏上进行恰当的格式化和语法突出显示! –

回答

3

几件事情:

1)它看起来就像你可能在你的数据库名称拼写错误。这也许应该是:

database=northwind 

2)您的数据来源应该是(local).或者你可能已经安装了一个实例,在这种情况下,你可能需要包括实例名称为好,如.\SQLExpress.\SQLServer

+0

好的。我想我明白了。我创建了一个表单应用程序并添加了一个数据网格,然后用它连接到我的计算机上的lcoal数据库文件。这是的connectionString数据源的价值= \ SQLEXPRESS; AttachDbFilename = “C:\ SQL Server 2000的示例数据库\ NORTHWND.MDF”;集成安全性= TRUE;连接超时= 30;用户实例=真 – user990692

0

如果你希望连接到使用路径数据库文件:

Server=.\SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes; 

来源:http://www.connectionstrings.com/sql-server-2008

但是,您可能还需要到数据库“附加”到SQL Server。在Management Studio中,如果使用的是SQL Server 2000中,则只是把“本地”或只需右键单击数据库文件夹,然后选择“附加...”

+0

呀。谢谢史蒂夫。这似乎更好。快速提问。 “data source =(local)”和“data source =。\ SQLExpress”之间的区别是什么?第一个对我来说似乎不起作用,即使这就是书本和在线教程中的内容。 – user990692

+0

我搜索了“数据源=(本地)”,第一个回答你的问题。 http://social.msdn.microsoft.com/Forums/en-US/adodotnetdataproviders/thread/ca864a05-eac9-45b1-bd29-a8e1ba4c41c5/ –

0

“” (不包括引号)的数据源。你在数据库名称中有一个错字。它应该是“罗斯文”

相关问题