2011-07-08 225 views
0

在ASP.NET中使用VS 2008,我想用ADO.Net 這是我的連接字符串來連接到一個Microsoft SQL Server:如何使用ADO.Net連接數據庫?

Data Source=.\SQLEXPRESS;AttachDbFilename=E:\JavaScript\App_Data\Database.mdf;Integrated Security=True;User Instance=True 

這裏是我的代碼:

OleDbConnection ocon = new OleDbConnection("Provider=SQLOLEDB;"+"Data Source=.\SQLEXPRESS;"+"AttachDbFilename=E:\JavaScript\App_Data\Database.mdf;"+"Integrated Security=True;"+"User Instance=True"); 
OleDbCommand ocom=new OleDbCommand(); 
OleDbDataAdapter oda=new OleDbDataAdapter(); 


protected void Page_Load(object sender, EventArgs e) 
{ 

    ocon.Open(); 
    ocom.CommandText = "StoredProcedure1"; 
    ocom.CommandType = CommandType.StoredProcedure; 
    ocom.Connection = ocon; 
    ocom.ExecuteReader(); 
    ocon.Close(); 
} 

當我運行這個,錯誤發生在連接字符串中。 那麼如何連接sqlserver數據庫使用ADO.net?

+0

確切的錯誤字符串是什麼 – basarat

回答

3

使用System.Data.SqlClient.SqlConnection,以及SqlCommand和其他,而不是OleDb類。另外,請確保使用using塊,以確保在完成連接時將連接返回到連接池。此外,湯姆建議使用connectionstrings.com來找出SqlConnection對象的正確連接字符串是一個很好的建議。

using System.Data; 
using System.Data.SqlClient; 

protected void Page_Load(object sender, EventArgs e) 
{ 
    using (SqlConnection conn = new SqlConnection(connectionString)) 
    using (SqlCommand cmd = conn.CreateCommand()) 
    { 
     cmd.CommandType = CommandType.StoredProcedure; 
     cmd.CommandText = "StoredProcedure1"; 
     conn.Open(); 
     using (SqlDataReader reader = cmd.ExecuteReader()) 
     { 
      while (reader.Read()) 
      { 
       // do stuff with the current row 
      } 
     } 
    } 
} 
+0

+1使用,使用很好的答案。 – kobe

1

Connectionstrings.com是當你需要與各種數據庫連接的各種選項幫助一個很好的資源。

相關問題