Foxtable(狐表)用户栏目专家坐堂 → 直接用sql语句代替ft默认保存出现的问题?


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

主题:直接用sql语句代替ft默认保存出现的问题?

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


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

 效率快慢是测试出来的。你试试不就知道了?如果你想控制,为空的,你可以不赋值。


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


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

以下是引用HappyFt在2017/3/28 15:39:00的发言:
还有个问题,直接用sql语句保存以后,原来表中因为修改过的行左边那个行号变为橘色的,sql保存后这个颜色变不回来了,要怎么办?

 

参考

 

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

 

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

 


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


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

 7楼的代码,本身就是一次性提交的,没有你说的不能回滚的情况。

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


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

 如果过程中有foxtable自己的错误,你可以在 BeforeShowErrorMessage 事件写回滚代码

 

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

 


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


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

如果没有执行 catch 的语句

 

Catch ex As Exception
    Connections(Mydata).Rollback()  '回滚事务
    msgbox(ex.tostring)      '返回错误信息
    sqlList.Clear()  '清空集合
    Return "NG"
End Try
 
那就说明,没有检测到错误。foxtable有可能吞掉了错误,放在 BeforeShowErrorMessage 事件处理了,你加入msgbox看是否弹出。

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


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

在事件加入msgbox,看你报错的时候有没有弹出。如果弹出了,你就在那里写事务回滚的代码。


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


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

这样写,细节自己调整

 

msgbox(e.ex.Gettype.Name)      '返回错误信息
If e.ex.Gettype.name = "OleDbException" Then

    msgbox(123)
    Connections(Mydata).Rollback()  '回滚事务
    vars("返回值") = "NG"
    e.Cancel = true
end if


 回到顶部