C# Access数据库增删查改的简单方法

时间:2024-01-22 08:41:07 

引用集:
using System.Data.OleDb;


static string exePath = System.Environment.CurrentDirectory;//本程序所在路径

//创建连接对象
OleDbConnection conn = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;data source=" + exePath + @"\文件名.mdb");

1.和查询有关的,如获取表数据(包括所谓的“刷新”和“连接数据库”)、按条件查询,都是用的 OleDbDataAdapter


private void 获取数据表/查询()
{
    conn.Open();

    //获取数据表
    //string sql = "select * from 表名 order by 字段1";
    //查询
    string sql = "select * from 表名 where 字段2="...;

    OleDbDataAdapter da = new OleDbDataAdapter(sql, conn); //创建适配对象
    DataTable dt = new DataTable(); //新建表对象
    da.Fill(dt); //用适配对象填充表对象
    dataGridView1.DataSource = dt; //将表对象作为DataGridView的数据源

    conn.Close();
}

其中“获取数据表”属于频繁被嵌套调用的方法,所以应去掉头尾的conn.Open和Close,以免和其他方法中的Open发生累加从而报错。

2.凡涉及修改表数据的,如增、删、保存修改,都是用 OleDbCommand


private void 增/删/改()
{
     conn.Open();

     //增
     string sql = "insert into 表名(字段1,字段2,字段3,字段4)values(...)";
     //删
     //string sql = "delete from 表名 where 字段1="...;
     //改
     //string sql = "update student set 学号=" ...;

     OleDbCommand comm = new OleDbCommand(sql, conn);

     comm.ExecuteNonQuery();

     conn.Close();
}

其中ExecuteNonQuery被成功更改的元组数量,所以comm.ExecuteNonQuery()也可以改造为判断,提示用户成功或失败。


int i = comm.ExecuteNonQuery();
if (i > 0)
{
      MessageBox.Show("添加数据成功!", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
      MessageBox.Show("添加失败!", "操作提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

3.对DataGridView中数据更改的保存


private void saveData2()
{
     dataGridView1.EndEdit();

     string sql = "select * from 表名";

     OleDbDataAdapter da = new OleDbDataAdapter(sql, conn);

     OleDbCommandBuilder bld = new OleDbCommandBuilder(da);
     da.UpdateCommand = bld.GetUpdateCommand();

        //把DataGridView赋值给dataTbale。(DataTable)的意思是类型转换,前提是后面紧跟着的东西要能转换成dataTable类型
     DataTable dt = (DataTable)dataGridView1.DataSource;

     da.Update(dt);
     dt.AcceptChanges();

     conn.Close();
}

标签:Access,增删查改
0
投稿

猜你喜欢

  • access改mdb为asp所带来的灾难 附mdb防下载方法

    2011-03-03 11:07:00
  • PHP PDOStatement::debugDumpParams讲解

    2023-06-06 04:18:55
  • aspjpeg组件通用加水印函数代码

    2011-04-04 10:32:00
  • Python中带时区的日期转换工具类总结

    2023-04-02 11:05:40
  • SQLSERVER数据库中的5173错误解决方法

    2024-01-23 16:25:58
  • Mysql 取字段值逗号第一个数据的查询语句

    2024-01-23 14:29:09
  • 优化Python代码使其加快作用域内的查找

    2021-09-25 06:40:13
  • oracle 树查询 语句

    2009-07-17 18:20:00
  • django在开发中取消外键约束的实现

    2021-10-12 05:47:57
  • Python简单进程锁代码实例

    2022-06-23 00:45:22
  • 彻底搞懂Python字符编码

    2023-10-14 01:05:03
  • 解决PyCharm不在run输出运行结果而不是再Console里输出的问题

    2023-05-01 17:47:17
  • mac系统OS X10.10版本安装最新5.7.9mysql的方法

    2024-01-14 10:05:38
  • 使用Python的Supervisor进行进程监控以及自动启动

    2022-11-19 16:55:35
  • mysql 5.7.18 zip版安装配置方法图文教程(win7)

    2024-01-26 17:58:18
  • python实战练习做一个随机点名的程序

    2022-06-16 07:42:31
  • 对python中的xlsxwriter库简单分析

    2022-08-22 22:46:01
  • python读取oracle函数返回值

    2022-10-07 23:47:48
  • mysql 数据库备份的多种实现方式总结

    2024-01-18 23:03:25
  • python和mysql交互操作实例详解【基于pymysql库】

    2024-01-16 01:03:47
  • asp之家 网络编程 m.aspxhome.com