gpt4 book ai didi

c# - 无法连接到远程 MS Access 数据库

转载 作者:行者123 更新时间:2023-11-30 20:10:13 25 4
gpt4 key购买 nike

我不断得到一个

InvalidOperationException:ExecuteReader 需要一个打开且可用的连接。连接的当前状态是关闭的。]

这是因为我的连接已关闭。我的连接字符串有什么问题?为什么打不开。

    protected void Page_Load(object sender, EventArgs e)
{
// Declaration section

//OleDbConnection objDBConn;
OleDbCommand objCmd;
OleDbDataReader objDR;

//create connection object
System.Data.OleDb.OleDbConnection conn = new
System.Data.OleDb.OleDbConnection();

// Modify the connection string and include any
// additional required properties for your database.
conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;" +
@"Data source= c:\inetpub\wwwroot\cm485a2\rreAccesscm485a2.mdb";

// Create OleDbCommand object with SQL to execute
objCmd = new OleDbCommand("SELECT * " +
" FROM customers " +
" ORDER BY cust_id", conn);

// Create a DataReader and execute the command
objDR = objCmd.ExecuteReader();

// Copy results from DataReader to DataGrid object
GridView1.DataSource = objDR;
GridView1.DataBind();


//close all objects
conn.Close();
conn.Dispose();

}

最佳答案

您需要先打开连接。

http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbconnection.open.aspx

此外,我会使用 using 来避免资源泄漏,如下所示:

using (var connection = new OleDbConnection())
{
connection.Open();
using (var command = new OleDbCommand("connectionString"))
{
//Do my stuff.
}
}

这种方式更容易让 GC 不收集资源。

HTH

关于c# - 无法连接到远程 MS Access 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5341966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com