Private Function Save() As Boolean
Try
Dim dschgs As DataSet = ds.GetChanges(DataRowState.Added + DataRowState.Deleted + DataRowState.Modified)
Dim da As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter("select lotno,isconfirm, confirmuser, confirmdate, eventuser, eventdate from cuttoship", oracleConn)
Dim cmbCDDetail As OleDb.OleDbCommandBuilder = New OleDb.OleDbCommandBuilder(da)
da.Update(dschgs, "cuttoship")
ds.AcceptChanges()
Return True
Catch ex As Exception
Return False
End Try
End Function
Private Sub btnUnConfirm_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUnConfirm.Click
Dim confirmTb As DataTable = gGrid.getCurrData(dgv)
Dim r_confirm() As DataRow = confirmTb.Select("s_select='True' and isconfirm='Y'")
If r_confirm.Length = Then
MessageBox.Show("no seleted data.")
Return
End If
If MessageBox.Show("Do you want to confirm these record?", "Confirm Sure", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) = DialogResult.No Then Return Try
Dim sql As String = ""
Dim time As String = Now.ToString("yyyy-MM-dd HH:mm:ss")
Dim row() As DataRow
For Each r As DataRow In r_confirm
row = ds.Tables("cuttoship").Select("lotno='" + r.Item("lotno") + "'")
row().BeginEdit()
row().Item("isconfirm") = "N"
row().Item("confirmuser") = DBNull.Value
row().Item("confirmdate") = DBNull.Value
row().Item("eventuser") = g.gUserId
row().Item("eventdate") = time
row().EndEdit()
Next
If Save() Then
MessageBox.Show("Confirm successfully!")
Else
MessageBox.Show("Confirm failed!")
ds.RejectChanges()
End If
Catch ex As Exception
MessageBox.Show("Un Confirm failed!")
ds.RejectChanges()
End Try
End Sub

用dataset保存数据不能存在空的数据,必须用DBNull.Value代替,否则出现“并行违规”的异常。

目标表必须有主键,否则出现“对于不返回任何键列信息的SelectCommand,不支持UpdateCommand 的动态SQL生成”的异常。

用dataset保存数据注意的问题的更多相关文章

  1. 利用DataSet更改数据,将更改保存到数据库中

    RowState 是 DataRow 很重要的一个属性, 表示 DataRow 当前的状态. RowState 有 Added, Modified, Unchanged, Deleted, Detac ...

  2. WCF分布式开发步步为赢(8):使用数据集(DataSet)、数据表(DataTable)、集合(Collection)传递数据

    数据集(DataSet).数据表(DataTable).集合(Collection)概念是.NET FrameWork里提供数据类型,在应用程序编程过程中会经常使用其来作为数据的载体,属于ADO.NE ...

  3. Redis学习——Redis持久化之AOF备份方式保存数据

    新技术的出现一定是在老技术的基础之上,并且完善了老技术的某一些不足的地方,新技术和老技术就如同JAVA中的继承关系.子类(新技术)比父类(老技术)更加的强大! 在前面介绍了Redis学习--Redis ...

  4. DataGrid通过DataSet保存为xml文件,并导入

    做了个小的DataGrid通过DataSet保存为xml_测试,DataGrid通过DataSet保存为xml_测试,通过dataSet.writeXML()和dataSet.readXML()方法完 ...

  5. EasyUI使用JSON保存数据

    目前来说,使用JSON保存数据比较方便,前台可以不用Test.aspx 页面,可以直接用Html页面,使用.aspx页面的弊端就不在这里熬述. 具体步骤如下: 1.新建一个Html页面,命名为Test ...

  6. AC中保存数据与查询数据

    //保存数据 hui.ajax(function (ret, err) { }, url, {values: {t:"test",m:"Search",c:&q ...

  7. SpringMVC保存数据到mysql乱码问题

    SpringMVC保存数据到mysql乱码问题 乱码问题常见配置 一.web.xml配置过滤器 <filter> <filter-name>encoding-filter< ...

  8. Android开发学习---android下的数据持久化,保存数据到rom文件,android_data目录下文件访问的权限控制

    一.需求 做一个类似QQ登录似的app,将数据写到ROM文件里,并对数据进行回显. 二.截图 登录界面: 文件浏览器,查看文件的保存路径:/data/data/com.amos.datasave/fi ...

  9. android fragment 的用法以及与activity的交互和保存数据的方法,包括屏幕切换(转载)!

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37992017 1.管理Fragment回退栈 类似与Android系统为Acti ...

随机推荐

  1. git的使用基础

    /*游戏或者运动才能让我短暂的忘记心痛,现如今感觉学习比游戏和运动还重要——曾少锋*/ 在Git-Bash中配置自己的名字和Email: git config --global user.name & ...

  2. BZOJ4872: [Shoi2017]分手是祝愿【概率期望DP】【思维好题】

    Description Zeit und Raum trennen dich und mich. 时空将你我分开.B 君在玩一个游戏,这个游戏由 n 个灯和 n 个开关组成,给定这 n 个灯的初始状态 ...

  3. Python需要知道的知识点

    1.所有数据类型都自带布尔值,布尔值为假的数据类型 包括( 空字符串,空列表,空字典,空集合).数字(0).None类型 2.Python实现int的时候有个小整数池.为了避免因创建相同的值而重复申请 ...

  4. C# winform 使用DsoFramer 创建 显示office 文档

    使用微软DsoFramer 组件创建,显示office 1. DsoFramer  组件的介绍 dsoframer是微软提供一款开源的用于在线编辑.调用Word. Excel .PowerPoint等 ...

  5. FastAdmin 系统配置中添加选项卡

    群里有小伙伴问怎么在系统配置中添加选卡,之前试过. 流程如下 刷新页面,然后就有了.

  6. storm之 Storm 工作原理

    Storm 工作原理 Storm简介 1.Storm是一套分布式的.可靠的,可容错的用于处理流式数据的系统. 2.Storm也是基于C/S架构来进行工作的,C负责将数据处理的方式的jar(Topolo ...

  7. jvm 知识点

    双亲委派模型的工作流程是: 如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把请求委托给父加载器去完成,依次向上,因此,所有的类加载请求最终都应该被传递到顶层的启动类加载器中, ...

  8. oracle schema 白话文详解

    概述: (一)什么Oracle叫用户(user): A user is a name defined in the database that can connect to and access ob ...

  9. pfsense的nat配置

    需要把内网192.168.1.100的80端口映射到外面,外网卡地址为192.168.1.200 firewall, firewall,nat,选择port forward标签,添加一个 在desti ...

  10. bzoj4161: Shlw loves matrixI

    Description 给定数列 {hn}前k项,其后每一项满足 hn = a1*h(n-1) + a2*h(n-2) + ... + ak*h(n-k) 其中 a1,a2...ak 为给定数列.请计 ...