gpt4 book ai didi

C# - OleDbConnection.Open() 导致崩溃

转载 作者:太空宇宙 更新时间:2023-11-03 20:33:01 25 4
gpt4 key购买 nike

C# 相当新,无论如何,我有我编写的这个 Initialise 方法,它基本上创建到 MS2007 Access 数据库的连接,用 4 个数据表填充数据集,这些数据表是一些查询的结果。

    public frmDBCompareForm()
{
///
/// Required for Windows Form Design support
///
InitializeComponent();
frmDBCompareForm_Initialize();

//
// TODO: Add any constructor code
//
if (_InstancePtr == null) _InstancePtr = this;
}

以及初始化方法的开始,包括正在填充的数据表之一:

private void frmDBCompareForm_Initialize()
{
// Fill DataSet with 3 DataTables, these tables will be
// made up of the from sQuery.
try
{
// Create a new DataSet
DataSet dsSite1 = new DataSet();
// Set up the connection strings to HCAlias.accdb
OleDbConnection con = new OleDbConnection();
con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\HCAlias.accdb;Persist Security Info=False;";
con.Open();
//
// Table 1 - dtSite1Name [cmbSite1]
//
dtSite1Name = new DataTable();
string sQuery = "SELECT SourceName From Sites";
OleDbCommand cmdSite1Name = new OleDbCommand(sQuery, con);
OleDbDataAdapter myDASite1Name = new OleDbDataAdapter(cmdSite1Name);
myDASite1Name.Fill(dsSite1, "dtSite1Name");
cmbSite1.DataSource = dtSite1Name;
cmbSite2.DataSource = dtSite1Name;

任何人都可以指出我按照我的方式进行此操作的正确方向吗?解决该连接问题的任何提示或建议?我一直像老板一样在谷歌上搜索,但似乎无法找到我遇到的确切问题。

最佳答案

您还需要关闭连接。在您的 finally block 上添加:

        using (var con = new OleDbConnection())
{
con.Open();
using (var cmd = new OleDbCommand("sqlquery", conn))
{

try
{
//do Stuff here
}
catch (OleDbException)
{

throw;
}

}
}

问候

关于C# - OleDbConnection.Open() 导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6487804/

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