14

假设我在 Visual StudioDatabase1.mdfApp_Data文件夹中创建了一个名为 SQL Server 的数据库,其中的表名为Names.

如何建立连接以使用 C# 读取表值?

到目前为止,我已经尝试过这样的事情:

SqlConnection conn = new SqlConnection("Server=localhost;Database=Database1;");

conn.Open();

// create a SqlCommand object for this connection
SqlCommand command = conn.CreateCommand();
command.CommandText = "Select * from Names";

但我收到一个错误:

找不到数据库/连接到数据库时出错

4

7 回答 7

15

Data Source(在 Visual Studio 的左侧)中,右键单击数据库,然后Configure Data Source With Wizard. 将出现一个新窗口,展开连接字符串,您可以在其中找到连接字符串

于 2012-08-31T18:40:30.410 回答
8

如果您使用SQL 身份验证,请使用以下命令:

using System.Data.SqlClient;

SqlConnection conn = new SqlConnection();
conn.ConnectionString = 
     "Data Source=.\SQLExpress;" + 
     "User Instance=true;" + 
     "User Id=UserName;" + 
     "Password=Secret;" + 
     "AttachDbFilename=|DataDirectory|Database1.mdf;"
conn.Open();

如果您使用Windows 身份验证,请使用以下命令:

using System.Data.SqlClient;
SqlConnection conn = new SqlConnection();
conn.ConnectionString = 
     "Data Source=.\SQLExpress;" + 
     "User Instance=true;" + 
     "Integrated Security=true;" + 
     "AttachDbFilename=|DataDirectory|Database1.mdf;"
conn.Open();
于 2012-08-31T23:08:19.280 回答
4

如果您使用的是 SQL Server express,请更改

SqlConnection conn = new SqlConnection("Server=localhost;" 
       + "Database=Database1;");

SqlConnection conn = new SqlConnection("Server=localhost\SQLExpress;" 
       + "Database=Database1;");

可以在http://www.connectionstrings.com/找到数百个连接字符串

于 2012-08-31T18:40:30.300 回答
4
SqlConnection c = new SqlConnection(@"Data Source=localhost; 
                           Initial Catalog=Northwind; Integrated Security=True");
于 2013-01-11T18:18:25.250 回答
3

您尝试使用此字符串连接

Server=.\SQLExpress;AttachDbFilename=|DataDirectory|Database1.mdf;Database=dbname; Trusted_Connection=Yes;
于 2012-08-31T18:38:53.983 回答
2

我喜欢使用此处概述的便捷过程来使用 .udl 文件构建连接字符串。这允许您从 udl 文件中测试它们,以确保您可以在运行任何代码之前进行连接。

希望有帮助。

于 2012-08-31T18:43:17.010 回答
1

Visual Studio 2019(可能还有几个以前的版本)。

  • 查看 -> SQL Server 对象资源管理器
  • 树的顶部是“SQL Server”
  • 在“SQL Server”下,有几个“(localdb)......”
  • 展开(localdb)... -> 数据库 ,直到找到您的数据库。
  • 数据库名称(例如 Database1) -> 右键单击​​ -> 属性,然后滚动许多属性(例如“ANSI NULL Default”)。找到“连接字符串”属性,将值复制到您的代码中,然后您就可以运行了。
于 2021-08-25T09:46:26.127 回答