DataAdapter 更新数据问题

问题描述

我使用如下的语句更新数据表时,数值、时间、逻辑类型的可以更新,但是字符类型的不能更新,不知道为什么?希望高手指点,真是郁闷。System.Data.OleDb.OleDbCommandBuildermyCommandBuilder;myDataAdapter=newOleDbDataAdapter(ShowSql,conn);datagridview1.EndEdit();//生成Delete/Update/Insert操作的CommandmyCommandBuilder=newSystem.Data.OleDb.OleDbCommandBuilder(myDataAdapter);//myCommandBuilder.GetDeleteCommand=myDataAdapter.DeleteCommand=myCommandBuilder.GetDeleteCommand();myDataAdapter.UpdateCommand=myCommandBuilder.GetUpdateCommand();myDataAdapter.InsertCommand=myCommandBuilder.GetInsertCommand();try{//保存到数据库myDataAdapter.Update(myDataSet,tablename);myDataSet.AcceptChanges();//myDataAdapter.Update(myDataSet.Tables[tablename]);}catch(Exceptionerr){myCommandBuilder.Dispose();MessageBox.Show(err.Message,"错误信息",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Exclamation);return;}

解决方案

解决方案二:
myDataAdapter.DeleteCommand=myCommandBuilder.GetDeleteCommand();myDataAdapter.UpdateCommand=myCommandBuilder.GetUpdateCommand();myDataAdapter.InsertCommand=myCommandBuilder.GetInsertCommand();//这些好像没有必要,是不是字段长度不够?好好看一下MSDN,里面有详细的介绍关于这一块,
解决方案三:
等看
解决方案四:
dingxiaxian
解决方案五:
看看报什么错。
解决方案六:
myCommandBuilder=newSystem.Data.OleDb.OleDbCommandBuilder(myDataAdapter);//myCommandBuilder.GetDeleteCommand=myDataAdapter.DeleteCommand=myCommandBuilder.GetDeleteCommand();myDataAdapter.UpdateCommand=myCommandBuilder.GetUpdateCommand();myDataAdapter.InsertCommand=myCommandBuilder.GetInsertCommand();声明了第一句,后面的都是默认的
解决方案七:
我知道原因了,就是在数据提取时,我使用了rtrim即selectrtrim(f1)asf1,rtrim(f2)asf2fromtable去掉rtrim保存就正确,这是为什么。如果不用rtrim,在datagridview中就有...,很难看,不知道怎么去掉

时间: 2024-08-01 10:27:42

DataAdapter 更新数据问题的相关文章

初谈ADO.NET中利用DataAdapter进行数据操作

ado|数据     对于刚刚学习ADO.NET数据访问技术的来说,DataAdapter也许往往会令他们感到迷惑,特别是习惯于利用托拽DataAdapter控件进行开发的朋友,通过这一ADO.NET数据访问控件,我们甚至不用书写一行代码,就能完成各种需要的数据访问和操作,然而在享受快捷便利的同时,心中却总挂着一丝意犹未尽的感觉.DataAdapter控件在背后为我们做了怎样的工作?弄清楚这一点,对于喜欢探根究底的朋友,不仅乐哉悠哉,也有利于我们更它的理解ADO.NET的数据访问机制:同时对于.

background-在后台更新数据到服务器

问题描述 在后台更新数据到服务器 如何给服务器更新数据?我使用下面的代码,但是10分钟后还是没有执行. ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor(); executor.scheduleWithFixedDelay(new Runnable(){ public void run() {//update data to server } } 0 600 TimeUnit.SECOND

android快速开发框架XUtils update更新数据 无效

问题描述 android快速开发框架XUtils update更新数据 无效 最近学习XUtils发现 update更新数据库中的某个对象无效,好像第二次又可以了. 请问各位有遇到过这种情况吗

利用XMLHTTP无刷新自动实时更新数据.

xml|数据|刷新|无刷新 前些时间写了几篇关于XMLHTTP运用的实例. (可以到http://dev.csdn.net/user/wanghr100看之前的几编关于XMLHTTP的介绍.) 近来看论坛上经常有人提问关于如何无刷新,自动更新数据. 传统上,我们浏览网页,如果加入最新的数据.只能是等我们重新向服务器端请求时才能显示出来. 但是,对于一些时效性很强的网站.传统的这种做法是不能满足的. 我们可以让程序自动刷新.定时向服务器请求数据.5秒取一次数据,10秒取一次数据. 利用XMLHTT

XMLHTTP无刷新自动实时更新数据

xml|数据|刷新|无刷新 传统上,我们浏览网页,如果加入最新的数据.只能是等我们重新向服务器端请求时才能显示出来.但是,对于一些时效性很强的网站,传统的这种做法是不能满足的. 我们可以让程序自动刷新,定时向服务器请求数据.5秒取一次数据,10秒取一次数据.利用XMLHTTP发出请求并取得数据.传到客户端,客户端重新组织并显示数据. demo.htm 前台显示. <script language="JavaScript">function GetResult(){/**--

如何实现插入并更新数据

插入|数据 各们老师好:                我想从一个表中插入数据并更新数据如何来实现: 例:   ID      年代    数据         1          2003    50         2          2002     40         3           2003      60 我想将其中的2003年的数据要更新成2004年的数据并要保留原来2003年的数据. 老师希望能指教.

用SQL更新数据

    更新数据使用的是[update]命令.4.8.1 直接赋值更新    1. 语法    update 数据表    set 字段名1=新的赋值,字段名2=新的赋值,--    where 条件    2. 实例    在[命令编辑区]执行以下语句.    ―――――――――――――――――――――――――――――――――――――    update scott.emp     set empno=8888,ename='TOM',hiredate='03-9月 -2002 '     w

更新数据

11.3.1 UPDATE 语法用户可以用UPDATE 语句来更新表中一列或多列数据值,其语法如下: 各参数说明如下: SETSET 子句用于指定更新的方法,即用的值取代相应的列的值.如果省略 WHERE 子句,那么表中的所有数据均会受到影响.在FROM 子句中指定的表或列的别名不能用于SET 子句中. column_name指定要更新数据的列.IDENTITY 列荒鼙桓隆? expression可以是常量.变量.表达式或返回单个值的子查询. DEFAULT指定使用已经定义的缺省值作为列的值.

批量更新数据

数据 最近做一项目,遇到了批量更新数据,代码 如下: 一个update的例子:<%@ Page language="C#" Debug="true" %><%@ Import Namespace="System.Data" %><%@ Import Namespace="System.Data.SqlClient" %> <script runat="server"