Foxtable(狐表)用户栏目专家坐堂 → 关于sql表达式列的保存问题?


  共有2063人关注过本帖树形打印复制链接

主题:关于sql表达式列的保存问题?

帅哥哟,离线,有人找我吗?
有点色
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/23 17:32:00 [显示全部帖子]

For Each dc As DataCol In edt.DataCols
    If dc.Expression = "" Then
        If edr.RowState = DataRowState.Added Then
            '新增额外处理
        ElseIf edr.OriginalValue(dc.Name)<> edr(dc.Name)
            edr(dc.Name) = edr.OriginalValue(dc.Name)
            msgbox(dc.Name)            
        End If
    End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/23 17:52:00 [显示全部帖子]

不明白你这样做的意图,你要做什么?

 

如果你想撤销保存,直接rejectchanges http://www.foxtable.com/webhelp/scr/1538.htm

 

如果你根本就不需要保存,你可以用sqlQuery查询表。


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/23 18:37:00 [显示全部帖子]

试试

 

If edr.RowState = DataRowState.Added Then
    edr(dc.Name) = DBNull.Value
End If

 

如果不行,就是不支持了。你用foxtable的代码处理拼音 http://www.foxtable.com/webhelp/scr/1270.htm

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/23 21:06:00 [显示全部帖子]

 数据表不要加载你那些列,单独查一个临时表。添加临时列,把临时表的值填写进去。


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/23 22:01:00 [显示全部帖子]

添加列,参考

 

http://www.foxtable.com/webhelp/scr/1428.htm

 

 

一次性赋值,不能写到drawcell事件。比如可以写到窗口的AfterLoad、AfterLoadTableSetting

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/23 23:52:00 [显示全部帖子]

用SQLGetValue这种方法取值,效率太低了。

 

建议用临时表一次性把数据弄出来,然后直接赋值。


 回到顶部