数据库-数据适配器adapter同条件下第二次fill出空表是为何

问题描述

数据适配器adapter同条件下第二次fill出空表是为何
        //初始化
                    sql = "select * from test1";
        con= new MySqlConnection("Server=localhost;Database=test; User=root;Password=password");
        cmd = new MySqlCommand(sql, con);
        testadapter=new MySqlDataAdapter(cmd);
                    //新建datatable
        DataTable table1 = new DataTable("test1table");
                    //fill  datatable
        testadapter.Fill(table1);
                    //新建命令生成器
                     MySqlCommandBuilder testcmdbuilder = new MySqlCommandBuilder(testadapter);

                    //给table1增加新行
                    DataRow r = table1.NewRow();
        table1.Rows.Add(r);
        //更新数据库
        testadapter.Update(table1);

这段代码在一个按钮事件处理函数中,第一次点击按钮运行本段代码,table1从数据库中fill成功出数据,第二次点击按钮后,table1重新new了一下,fill不成功,table1是空表,但是没有报错也没有异常 为何啊

最后发现是给table1新加行newrow出的问题,但是为什么第一次运行代码添加新行成功后第二次fill就是空表呢

调试后进一步发现是MySqlCommandBuilder的问题,注释掉MySqlCommandBuilder语句后,多次fill成功.为什么加入MySqlCommandBuilder会影响后续fill数据表呢?

解决方案

单步调试下,是不是没有数据造成的。

时间: 2024-11-01 18:31:16

数据库-数据适配器adapter同条件下第二次fill出空表是为何的相关文章

实现jsp页面二级下拉框联动,实时读取数据库数据

在一个jsp页面实现二级下拉框联动,实时读取数据库数据,这个方法非常有用,只需要修改很小的地方就可以使用.设计的文件,serch.jsp,main.js,bytetostr.js, 先讲一下main.js,这是javascript,其中注意修改jsp页面名称. 以下为引用的内容: function findObject(fName,initValue)...{   var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");   xmlht

Oracle数据库数据对象分析 (下)

oracle|对象|数据|数据库 过程和函数 过程和函数都以编译后的形式存放在数据库中,函数可以没有参数也可以有多个参数并有一个返回值.过程有零个或多个参数,没有返回值.函数和过程都可以通过参数列表接收或返回零个或多个值,函数和过程的主要区别不在于返回值,而在于他们的调用方式.过程是作为一个独立执行语句调用的: pay_involume(invoice_nbr,30,due_date); 函数以合法的表达式的方式调用: order_volumn:=open_orders(SYSDATE,30);

用以下代码实现的三级联动下拉菜单[调用数据库数据],没有显示菜单内容,帮我看看是哪里出问题了?谢谢!

问题描述 用以下代码实现的三级联动下拉菜单[调用数据库数据],没有显示菜单内容,帮我看看是哪里出问题了?谢谢! 三个表: P_BigClass(字段:BigClassID,BigClassName,descid), P_SmallClass(字段:SmallClassID,BigClassName,SmallClassName,descid), P_Sales(字段:SalesID,SmallClassName,SalesName,descid) var arrSel=["BigClassNam

通过句柄恢复Linux下误删除的数据库数据文件

环境介绍: OS:Redhat EnterPrise 5.4DB:Oracle EnterPrise Database 11gR2(11.2.3.0)        在数据库正常运行时,运维人员在无意中将部分数据文件删除了,此时数据库管理员并不知道,且数据库运行正常,并没有立即抛出错误和告警:但是开发人员在对某张表进行更新的时候,正好这张表在被删除的数据文件中,报出ORA-01110和ORA-27041错误.随即数据库管理人员来看现象,发现有一个文件已经从系统层面删除了,并且数据库数据库没有进行

update-使用数据适配器离线访问数据库,下面这段代码老是出错!学生党求助!!

问题描述 使用数据适配器离线访问数据库,下面这段代码老是出错!学生党求助!! SqlDataAdapter da = new SqlDataAdapter(); da.MissingSchemaAction = MissingSchemaAction.AddWithKey; SqlConnection conn = new SqlConnection("server=(local);database=超市会员管理;trusted_connection=true"); SqlComman

MyEclipes下执行Hive语句查询Hbase数据库数据

前几天有一个top100的案例分享,全程听了各个公司架构组的一些案例技术分享,发现大家都在大数据方面投入很大,相比当当,58,阿里巴巴,Facebook,Google这些公司.新浪的分享者比较保守,很多不算牵扯到细节都系都说不方便说,其实技术都是那些技术,只是业务不同产生很多不同的架构,感觉没必要. 闲话不多说,最近完成了在MyEclipes完成了hive操作Hbase数据库数据,直接上代码 定义枚举. public enum SqlType { ALLORDERNUMBER, DAYORDER

android sqlite使用之模糊查询数据库数据的三种方式

android应用开发中常常需要记录一下数据,而在查询的时候如何实现模糊查询呢?很少有文章来做这样的介绍,所以这里简单的介绍下三种sqlite的模糊查询方式,直接上代码把: package com.example.utils; import java.util.ArrayList; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import

oracle 数据库数据迁移解决方案_oracle

去年年底做了不少系统的数据迁移,大部分系统由于平台和版本的原因,做的是逻辑迁移,少部分做的是物理迁移,有一些心得体会,与大家分享. 首先说说迁移流程,在迁移之前,写好方案,特别是实施的方案步骤一定要写清楚,然后进行完整的测试.我们在迁移时,有的系统测试了四五次,通过测试来完善方案和流程. 针对物理迁移,也即通过RMAN备份来进行还原并应用归档的方式(这里不讨论通过dd方式进行的冷迁移),虽然注意的是要将数据库设为force logging的方式,在用RMAN做全备之前,一定要执行: 否则可能会产

直接获取Access、SQL Server等数据库数据

access|server|数据|数据库 直接获取access.SQL Server等数据库数据Author: MixPST,Ph4nt0m Security Teamhttp://www.ph4nt0m.org 当使用SQL注入access的时候,经常会遇到密码为中文.猜不到关键字段名这样的问题.使用本技术就能够很快速的解决这样的问题.本技术最低要求有两条: 1.使用access数据库的系统存在SQL注入漏洞:mssql数据库也支持这个技术2.需要知道欲爆数据所在的表的表名以及这个表下的一个字