2011-07-08 5 views
0

は、私はこれは私の接続文字列であるADO.Net を使用してMicrosoft SQL Serverに接続したい:ADO.Netを使用してデータベースに接続する方法は? VS 2008とASP.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(); 
} 

私はこれを実行すると、エラーが接続文字列で発生します。 それでは、ADO.netを使用してsqlserverデータベースに接続する方法は?

+0

あなたが得た正確なエラー文字列は何ですか – basarat

答えて

3

OleDbクラスではなく、System.Data.SqlClient.SqlConnectionとSqlCommandとそれ以外を使用してください。また、完了したら接続プールに接続が返されるように、usingブロックを使用してください。また、connectionstrings.comを使用してSqlConnectionオブジェクトの適切な接続文字列を調べるというTomの提案も良い方法です。

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は、あらゆる種類のデータベース接続にさまざまなオプションが必要な場合に役立ちます。

関連する問題