如何修复“找不到可安装的ISAM”错误

时间:2019-04-23 00:46:38

标签: c# database ms-access ado.net oledbconnection

我在使用C#表单更新数据库时遇到问题。我有一个Access数据库(包含员工信息)连接到我的项目,并且我希望允许用户更新其特定信息。我设置了它,只要用户在文本框中输入其他参数,它将在哪里运行Update查询。不幸的是,每当我尝试运行它时,都会出现以下错误:“找不到可安装的ISAM”。

Access数据库是.accdb文件,没有密码保护。我尝试重新安装Microsoft Access 2010 Distribute驱动程序,甚至将数据库的副本转换为.mdb。我还尝试将目标计算机从Any CPU更改为x86和x64。我做这两种方法的最接近方法都是使用.mdb数据库在x64上运行程序,即使这会返回另一个错误:“'Microsoft.Jet.OLEDB.4.0'提供程序未在本地计算机上注册”。此外,我还是希望保留.accdb文件。

OleDbConnection sql = new OleDbConnection();
sql.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Users\[Path].accdb; Persist Secuity Info=False";
OleDbCommand cmd = new OleDbCommand();

        try
        {
            if (textBox5.Text != "" | textBox5.Text != Form1.username)
            {
                    sql.Open();
                    cmd.Connection = sql;
                    cmd.CommandText="UPDATE Staff SET Username = @username WHERE ID = " + textBox1.Text;
                    cmd.Parameters.AddWithValue("@username", textBox5.Text);
                cmd.ExecuteNonQuery();
                sql.Close();
            }

理想情况下,更新查询应该运行,使我可以更新数据库的特定记录。

谢谢大家!

0 个答案:

没有答案