首页 > 数据库 >C#在DataGridView表格中操作Access数据库

C#在DataGridView表格中操作Access数据库

时间:2024-05-21 13:07:33浏览次数:23  
标签:ole C# System private DataGridView Access using da Data

C#在DataGridView表格中 直接 添加 修改 删除数据 

效果图

 Form1.cs 完整代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb; 
using System.Data;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
 
        private OleDbConnection ole_connection = null;
        private OleDbDataAdapter ole_da = null;
        private DataTable dt = new DataTable();

        private void Form1_Load(object sender, EventArgs e)
        {
            try
            {
                //表中必有主键
                string strSql = "select * from jg_船名信息 ";

                string db_path = System.Windows.Forms.Application.StartupPath + @"\data\jingang3_db.mdb";

                string conn_str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" + db_path + "'";
                this.ole_connection = new OleDbConnection(conn_str); //创建实例  

                this.ole_da = new OleDbDataAdapter(strSql, this.ole_connection);

                this.ole_da.Fill(this.dt);
                this.dataGridView1.DataSource = this.dt;
            }
            catch (Exception ex)
            {
                MessageBox.Show("查询表信息时出错!");
            }
        }

        private void but保存_Click(object sender, EventArgs e)
        { 
            try
            {
                //表中必有主键
                System.Data.OleDb.OleDbCommandBuilder ole_cb = new OleDbCommandBuilder(this.ole_da);
                this.ole_da.UpdateCommand = ole_cb.GetUpdateCommand();
                this.ole_da.Update(this.dt);
                MessageBox.Show("保存成功!");
            }
            catch (Exception ex)
            {
                MessageBox.Show("保存失败!");
            }
        }

        private void but删除_Click(object sender, EventArgs e)
        {
            try
            {
                this.dataGridView1.Rows.RemoveAt(this.dataGridView1.CurrentCell.RowIndex);//删除选中行

                //表中必有主键
                //数据库中进行删除
                System.Data.OleDb.OleDbCommandBuilder ole_cb = new OleDbCommandBuilder(this.ole_da);
                this.ole_da.UpdateCommand = ole_cb.GetUpdateCommand();
                this.ole_da.Update(this.dt);
                MessageBox.Show("删除成功!");

            }
            catch (Exception ex)
            {
                MessageBox.Show("删除失败!");
            }
 
        }

        private void butClose_Click(object sender, EventArgs e)
        {
            this.Close();
        }

    

    }
}

 

标签:ole,C#,System,private,DataGridView,Access,using,da,Data
From: https://www.cnblogs.com/hailexuexi/p/18203755

相关文章

  • ciscn2024初赛部分题目复现
    gdb_debug64位ida反编译,将主要加密部分使用chatgpt写成更容易理解的python形式如下:defencrypt_string(s):v17=[]foriinrange(len(s)):v17.append(ord(s[i])^rand_1[i])ptr=list(range(len(s)))forkinrange(len(s)-1,0,-1):......
  • FormCreate中在事件中获取api
    form-create中在事件中获取apiFormCreate是一个可以通过JSON生成具有动态渲染、数据收集、验证和提交功能的表单生成组件。支持5个UI框架,并且支持生成任何Vue组件。内置20种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定FormCreate官网:https://www.form-create.com......
  • C#如何用最简单方法调用Python?
    最近有群友咨询C#如何调用Python?小编尝试Python.NET过程中遭遇的版本兼容性和环境配置难题,小编决定寻找一个更为简单、稳定且对初学者友好的解决方案。小编搜索一番,除了Python.NET之外,还有其他途径能够帮助我们轻松地在C#项目调用Python脚本,那就是通过命令行调用,使用System.Diagn......
  • form-create-designer中怎么扩展自定义组件
    form-create-designer中怎么扩展自定义组件form-create-designer是基于 @form-create/element-ui实现的表单设计器组件。可以通过拖拽的方式快速创建表单,提高开发者对表单的开发效率,节省开发者的时间。FormCreate官网:https://www.form-create.com帮助文档:https://pro.form-cr......
  • [CISCN 2022 初赛]online_crt crash漏洞引起的命令执行
    几天没做题了,有点生疏。看题吧。题目标签说是CVE-2022-1292,去看看。意思就是在$fname处构造恶意文件名导致的命令注入,而且前面没有认真过滤,也就是文件名命令执行。看看题目源码:点击查看代码importdatetimeimportjsonimportosimportsocketimportuuidfromcryptogr......
  • 【Halcon】实现分离通道、创建矩形、获取灰度级、求最大最小均值、求大于某一灰度级的
    read_image(Image,'D:/image/123.jpg')rgb1_to_gray(Image,GrayImage)gen_rectangle1(Rectangle,100,100,200,200)rectangle1_domain(GrayImage,ImageReduced,100,100,200,200)crop_domain(ImageReduced,ImagePart)get_region_points(ImageP......
  • Chardet: 通用字符编码检测器
    Chardet:通用字符编码检测器构建状态图片PyPI上的最新版本许可证检测ASCII、UTF-8、UTF-16(2个变体)、UTF-32(4个变体)Big5、GB2312、EUC-TW、HZ-GB-2312、ISO-2022-CN(繁体和简体中文)EUC-JP、SHIFT_JIS、CP932、ISO-2022-JP(日语)EUC-KR、ISO-2022-KR、Johab(韩语)KOI8-R、MacCy......
  • 易基因:WGBS+ChIP-seq等表观组分析揭示FOXM1 是抗肿瘤免疫应答的关键调控因子
    大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。食管癌是一种常见的恶性肿瘤,包括两种主要的组织学亚型:食管鳞状细胞癌(squamouscellcarcinoma,ESCC)和食管腺癌(adenocarcinoma,EAC)。近两年来对抗肿瘤免疫应答机制的理解得到了显著提高,免疫检查点阻断(ICB)疗法等免疫疗......
  • CSP历年复赛题-P1016 [NOIP1999 提高组] 旅行家的预算
    原题链接:https://www.luogu.com.cn/problem/P1016题意解读:用最少的加油费用到达另一个城市,中间有若干加油点,起点也可加油。解题思路:本题是一个贪心策略题:枚举每一个加油点i:1、初始加油点是起点2、汽车能跑的最大距离范围内,找到下一个更便宜的加油点的位置3、如果能找到更便......
  • .net8 winform程序使用EntityFrameworkCore连接数据库
    在.NET8WinForms应用程序中使用EntityFramework(EF)Core,你需要按照以下步骤操作:1.添加EntityFrameworkCoreNuGet包。2.定义你的数据模型。3.创建数据库上下文(DbContext)。4.在数据库上下文中配置EntityFramework。5.使用EntityFrameworkCore的API来执行数据库操作。......