错误“Canvas dose not allow drawing”和三层中多表更新问题(使用ADO)

tuncan 2003-08-19 01:02:05
问题一:编译时,按F9键就会出现错误:“Canvas dose not allow drawing”,若按F7键则没有。
问题二:使用ADO的三层架构,当涉及多个表更新(在DBGrid中),执行ApplyUpdate(0)时,每次在最后都会出现回滚。我已经将DataSetProvider的ResolveToDataSet属性设为true。用SQL Server Profiler看到的第一句:set implicit_transacts on最后一句:IF @@TRANCOUNT>0 ROLLBACK TRAN.
请赐教
...全文
114 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tuncan 2003-08-19
  • 打赏
  • 举报
回复
出问题的语句找出来了。我在DataSet的FetchComplete事件中加入了计时和显示所用时间的消息语句,我把那条显示消息的语句移到那个事件外面来执行就没有问题。不知道是什么原因。
tuncan 2003-08-19
  • 打赏
  • 举报
回复
附带说一下,那个错误是在我按下按钮的时候发生的,执行的代码只是DataSet的开关而已
tuncan 2003-08-19
  • 打赏
  • 举报
回复
所有的我只用了一个ADOConnection、一个ADOClientDataSet、两个按钮、一个DBGrid和一个DBNavigator,也没有做什么其他的设置,如果说是後两项设置有问题的话提示的问题应该是数据集等等错误。我还是检查一下先
huojiehai 2003-08-19
  • 打赏
  • 举报
回复
有没有用到Setfocus
如果用到肯定是窗口还没显示,或者被Setfocus的控件的Visible设置为false了;


检查一下你的源码吧!!
tuncan 2003-08-19
  • 打赏
  • 举报
回复
执行到的,全部执行过了都没有问题,就是一起执行时会出错。
江山易改 2003-08-19
  • 打赏
  • 举报
回复
问题一:这是delphi全编译的问题,按F7是因为没有执行到该步

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧