以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 克隆当前行问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81479) |
-- 作者:ShotHit -- 发布时间:2016/2/28 22:02:00 -- 克隆当前行问题 举例如: 订单表Tb_Order,主键为订单号:order_id 对于已存在一个订单号为:A001的数据,进行克隆行操作 If CurrentTable.Current IsNot Nothing Then CurrentTable.Current.Clone() End If 提示主键值A001已存在 按道理说:这个只是在Tables中加一行,并没有真正保存吧? 请问如何改进实现,排除逐个字段赋值的方式
|
-- 作者:Hyphen -- 发布时间:2016/2/29 9:14:00 -- 只能 逐个字段赋值,除非改为用自增字段做主键,然后订单号改为用唯一索引 |
-- 作者:大红袍 -- 发布时间:2016/2/29 9:25:00 -- 要这样做才行。
Dim r As Row = CurrentTable.Current |
-- 作者:ShotHit -- 发布时间:2016/2/29 22:43:00 -- 这个列名的数组有办法自动获取到吗? 也就是获取order表的所有列名,转换成一个数组
|
-- 作者:大红袍 -- 发布时间:2016/2/29 22:57:00 -- Dim r As Row = CurrentTable.Current If r IsNot Nothing Then Dim dr2 As DataRow = CurrentTable.DataTable.AddNew() For Each c As Col In CurrentTable.Cols If c.name <> "第二列" Then dr2(c.name) = r(c.name) End If Next End If
|