2012-08-31 51 views
8

Giả sử tôi đã tạo cơ sở dữ liệu SQL Server được gọi là Database1.mdf trong thư mục App_Data trong Visual Studio với một bảng gọi là Names.Kết nối với cơ sở dữ liệu SQL Server cục bộ bằng C#

Làm cách nào để thiết lập kết nối để đọc các giá trị bảng bằng C#?

Cho đến nay tôi đã thử một cái gì đó như thế này:

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"; 

Nhưng tôi nhận được một lỗi:

database not found/error connecting to database

+0

Bạn có đính kèm DB SQL Server? –

Trả lời

11

Trong Data Source (ở bên trái của Visual Studio) nhấp chuột phải vào cơ sở dữ liệu, sau đó Configure Data Source With Wizard. Một cửa sổ mới sẽ xuất hiện, mở rộng chuỗi kết nối, bạn có thể tìm thấy chuỗi kết nối trong đó

+1

Để hiển thị cửa sổ nguồn dữ liệu: Trên thanh trình đơn, chọn Xem, Windows khác, Nguồn dữ liệu (hoặc chọn các phím Shift + Alt + D). – ECH

2

Bạn thử với kết nối chuỗi này

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

Nếu bạn' đang sử dụng lại SQL Server express, thay đổi

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

để

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

đó, và hàng trăm người khác chuỗi kết nối có thể được tìm thấy tại http://www.connectionstrings.com/

2

Tôi thích sử dụng quy trình tiện dụng được nêu here để tạo chuỗi kết nối bằng tệp .udl. Điều này cho phép bạn kiểm tra chúng từ bên trong tệp udl để đảm bảo rằng bạn có thể kết nối trước khi bạn chạy bất kỳ mã nào.

Hy vọng điều đó sẽ hữu ích.

4

Nếu bạn sử dụng SQL authentication, sử dụng này:

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(); 

Nếu bạn sử dụng thẩm định Windows, sử dụng này:

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(); 
3
SqlConnection c = new SqlConnection(@"Data Source=localhost; 
          Initial Catalog=Northwind; Integrated Security=True"); 
Các vấn đề liên quan