c# 连接数据库2 OleDbDataAdapter DataSet[通俗易懂]

c# 连接数据库2 OleDbDataAdapter DataSet[通俗易懂]    privatevoidbutton2_Click(objectsender,EventArgse)    {      stringcon=@"Provider=Microsoft.Jet.OleDb.4.0;DataSource=fruit.mdb";      OleDbConnectiondbconn=newO…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定
       

  1. string Con = @“Provider=Microsoft.Jet.OleDb.4.0;Data Source=C:\Users\87627\Desktop\Database1.mdb”;//第二个参数为文件的路径    
  2.             OleDbConnection dbconn = new OleDbConnection(Con);  
  3.             dbconn.Open();//建立连接  
  4.             OleDbDataAdapter inst = new OleDbDataAdapter(“SELECT *FROM student”, dbconn);//选择全部内容  
  5.             DataSet ds = new DataSet();//临时存储  
  6.             inst.Fill(ds);//用inst填充ds  
  7.             dataGridView1.DataSource = ds.Tables[0];//展示ds第一张表到dataGridView1控件  
  8.             dbconn.Close();//关闭连接  

     

增加操作:利用insert方法,在dbconn.Open();后添加以下代码,然后将所有代码复制到对应按钮的click事件下

[csharp] 
view plain  
copy

  1. string Insert = “INSERT INTO student(studentName,age,tall,gender) values(‘” + “学生4” + “‘,'” + 21 + “‘,'” + 175 + “‘,'” + “男” + “‘)”;  
  2.             //insert into 表名(字段1,字段2…)values(‘字段一内容’,’字段二内容’),上一行+用于字符串的连接,如果想用textBox传值,可用  
  3.             //string s = “‘” + textBox1.Text + “‘”, x = “‘” + textBox2.Text + “‘”;  
  4.             OleDbCommand myCommand = new OleDbCommand(Insert, dbconn);//执行命令  
  5.             myCommand.ExecuteNonQuery();//更新数据库,返回受影响行数;可通过判断其是否>0来判断操作是否成功  

        private void button2_Click(object sender, EventArgs e)
        {

            string con = @”Provider = Microsoft.Jet.OleDb.4.0;Data Source = fruit.mdb”;
            OleDbConnection dbconn = new OleDbConnection(con);
            dbconn.Open();
            string Insert = “INSERT INTO fruit([Name], [Number], [Source], [Stack]) values (‘” + “梨” + “‘, ‘” + “88” + “‘, ‘” + “大连” + “‘, ‘” + “仓库9” + “‘)”;
            OleDbCommand myCommand = new OleDbCommand(Insert, dbconn);
            myCommand.ExecuteNonQuery();

            OleDbDataAdapter inst = new OleDbDataAdapter(“select *from fruit”, dbconn);
            DataSet ds = new DataSet();
            inst.Fill(ds);
            dataGridView1.DataSource = ds.Tables[0];
            dbconn.Close();

        }

    程序中会出现INSERT INTO 语法错误,可以把字段名用[]括起来即可。

删除操作:利用delete方法,在dbconn.Open();后添加以下代码,然后将所有代码复制到对应按钮的click事件下

[csharp] 
view plain  
copy

  1. string s = “‘” + textBox1.Text + “‘”;//接受textBox1的字符串  
  2.             string Delete = “DELETE FROM student WHERE studentName = “+ s;  
  3.             //delete from 表名 where 字段名=’字段值’;以上代码执行后会将所有studentName为textbox中内容的行删除  
  4.             OleDbCommand myCommand = new OleDbCommand(Delete, dbconn);//执行命令  
  5.             myCommand.ExecuteNonQuery();//更新数据库,返回受影响行数;可通过判断其是否>0来判断操作是否成功  

修改操作:利用update方法,在dbconn.Open();后添加以下代码,然后将所有代码复制到对应按钮的click事件下

[csharp] 
view plain  
copy

  1. string s = “‘” + textBox1.Text + “‘”, x = “‘” + textBox2.Text + “‘”; 接受textBox的字符串  
  2.             string Update = “UPDATE student SET studentName=” + x + “WHERE studentName = “ + s;  
  3.             //update 表名 set 字段名=’字段值’ where 字段值=’字段值’;上一行代码执行后将所有studentName中的s替换为x  
  4.             OleDbCommand myCommand = new OleDbCommand(Update, dbconn);//执行命令  
  5.             myCommand.ExecuteNonQuery();//更新数据库,返回受影响行数;可通过判断其是否>0来判断操作是否成功  

查询操作:利用select方法,在dbconn.Open();后添加以下代码,修改OleDbDataAdapter inst为第三行内容,然后将所有代码复制到对应按钮的click事件下

[csharp] 
view plain  
copy

  1. string s = “‘” + textBox1.Text + “‘”;//接受textBox1的字符串  
  2.            string Select = “SELECT *FROM student WHERE studentName = “ + s;  
  3.            //select *from 表名 where 字段名=’字段值’;*表示全表,从全表中  
  4.            OleDbDataAdapter inst = new OleDbDataAdapter(Select, dbconn);//只匹配满足条件的行  

注意增删改查的代码均插入到打开数据库代码:

[csharp] 
view plain  
copy

  1. dbconn.Open();//打开连接操作  

之后;

查询后:

[csharp] 
view plain  
copy

  1. MessageBox.Show(ds.Tables[0].Rows[0][“studentNO”].ToString());  
  2. //这行代码可以展示ds中第一张表(Tables[0])第一行(Rows[0])[“字段名”]的信息;在查找后可以用这种方式输出提示相关信息  

        private void button2_Click(object sender, EventArgs e)

        {

            string con = @”Provider = Microsoft.Jet.OleDb.4.0;Data Source = fruit.mdb”;

            OleDbConnection dbconn = new OleDbConnection(con);

            OleDbDataAdapter inst = new OleDbDataAdapter(“select *from fruit”, dbconn);

            DataSet ds = new DataSet();

            inst.Fill(ds);

            dataGridView1.DataSource = ds.Tables[0];

            dbconn.Close();

        }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/213417.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • slf4j如何使用_正确刷牙方法图解

    slf4j如何使用_正确刷牙方法图解环境说明Windows101803IDEA2018.2.EAPMaven3.5.2这是正文POM文件<!–https://mvnrepository.com/artifact/org.projectlombok/lombok–><dependency><groupId&g…

  • AvalonDock使用心得「建议收藏」

    AvalonDock使用心得「建议收藏」  桌面程序的应用,不可避免的就会用到大量的布局控件,之前的一个项目也想过去做类似于VisualStudio的那种灵活的布局控件,也就是界面上的控件能够实现拖拽放置、隐藏、窗口化等一系列的操作,但由于开发时间以及需求的原因,没有太严格要求这方面功能的实现,也就只能算是想过一下而已,实际用的时候还是固定布局,但是最近接触到新的项目,需要这方面的应用就不得不自己动手查找和做这样的东西了。  有朋…

  • 3月第二周回顾:思科牵手IBM Oracle挑战SAP

    3月第二周回顾:思科牵手IBM Oracle挑战SAP

  • java四舍五入保留小数「建议收藏」

    java四舍五入保留小数「建议收藏」//方式一:doublef=3.1516;BigDecimalb=newBigDecimal(f);doublef1=b.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue(); //方式二:newjava.text.DecimalFormat("#.00").format(3.1415926);//#.00表示两位小数…

  • c# 非阻塞算法_c# – 了解非阻塞线程同步和Thread.MemoryBarrier

    c# 非阻塞算法_c# – 了解非阻塞线程同步和Thread.MemoryBarrier这是Thread.MemoryBarrier()的一个例子classFoo{int_answer;bool_complete;voidA(){_answer=123;Thread.MemoryBarrier();//Barrier1_complete=true;Thread.MemoryBarrier();//Barrier2}voidB(){Thread…

  • 微信开放平台认证后怎么实现扫码登录功能[通俗易懂]

    微信开放平台认证后怎么实现扫码登录功能[通俗易懂]主题:微信开放平台认证后怎么实现扫码登录功能在面对这些问题时,同时也是很多刚入手做开发朋友疑惑的希望能帮你们快速完成微信登录配置。以我多天的日夜辛苦测试和实践,同时也是我自己在开发过程中遇到的问题被我不断尝试,一遍又一遍的填写参数,建站平台换几十个,最总发现了这些问题所在给大家总结了以下几点问题和解决方案:1.认证微信开放平台和微信公众平台认证有区别吗?如果只用来作微信登录和使用微信支付,那么告诉你:没有区别,同样是三百块钱认证费用(你只注意一下你的开发资料能一次性通过就行)2.同样能实

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号