c# - 如何使用 .NET 中的 OleDb 命名空间连接到 Access 数据库?

标签 c# sql ms-access ado.net oledb

我想为我的 Windows 窗体应用程序使用 Access 数据库。 (用C#编写)
我使用 OleDb 命名空间进行连接,并且能够使用 OleDbConnectionExecuteReader 对象从源中选择记录。
但是,我还不能插入、更新或删除记录。

我的代码如下:

 OleDbConnection con = new OleDbConnection(strCon);

 try
 {
     string con="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=xyz.mdb;Persist Security Info=True";

     con.Open();

     OleDbCommand com = new OleDbCommand("INSERT INTO DPMaster(DPID, DPName, ClientID, ClientName) VALUES('53', 'we', '41', 'aw')", con);

     int a = com.ExecuteNonQuery();

     //OleDbCommand com = new OleDbCommand("SELECT * FROM DPMaster", con);
     //OleDbDataReader dr = com.ExecuteReader();

     //while (dr.Read())
     //{
     //    MessageBox.Show(dr[2].ToString());
     //}

     MessageBox.Show(a.ToString());
 }
 catch
 {
     MessageBox.Show("cannot");
 }

如果我执行注释 block ,应用程序工作正常。但是插入 block 没有。

知道了,为什么我无法插入、更新或删除数据库记录?

最佳答案

我自己遇到的问题是:

您已将 mdb 文件添加到您的解决方案中,每次运行该程序时,它都会被复制到调试文件夹中。

因此您可以从中进行选择,但删除行不会影响解决方案中的原始文件。

检查它。

关于c# - 如何使用 .NET 中的 OleDb 命名空间连接到 Access 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4526680/

相关文章:

c# - 如何将这些变量写入 C# 中的一行代码?

c# - Aspose 或电子表格设备

vba - 使用vba检查网络连接

c# - ViewModel 的数据更改时,文本框不会更新

c# - 关于我们在具有多个客户端的分布式应用程序中进行验证的方法的思考

sql - 从不同的另一个 View 创建一个 View 并计算一些字段

MySQL 查询 phpmyadmin

mysql - 查找多个连接表之一的匹配类型

excel - 如何使用 VBA 使用 Microsoft XMLHTTP 获取文件扩展名

ms-access - 在 Access 窗体上将控件分组在一起