Delphi中操作Sybase数据库问题,高手请进!!!!救急!!!!!!!!

sharklee 2002-03-06 08:12:11
我在DELPHI中使用Tquery组件连接到一个Sybase数据库。在使用post或ApplyUpdate方法更新数据库时速度很慢,且造成Sybase中相应表死锁。而使用ExecSql方法直接执行“Update test set t1='a' where t2='b'”时,速度飞快,请问高手是何原因???
...全文
46 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
seekuface 2002-03-08
  • 打赏
  • 举报
回复
补充一点: 方法是在select语句中的表名后面加[锁的类型]
seekuface 2002-03-06
  • 打赏
  • 举报
回复
规则:尽量少将数据传到本地处理(Delphi默认是传到本地处理),尽量使用服务器处理。
尽量减少占用服务器时间(因为这样易产生Death lock)。
update时如有其它操作正在执行也易产生Death lock,因为update 是独占的(似乎有方法可设定,但这要自已去查书)
forgot2000 2002-03-06
  • 打赏
  • 举报
回复
建议你的RequestLive设为False,CacheUpdates设为True,用UpdateQuery组件进行缓存更新,肯定比一条一条地执行SQL语句快。
lastlove 2002-03-06
  • 打赏
  • 举报
回复
一般post一次只提交一条记录,频繁进行这样操作会占用很多网络资源,而且效率不高,
一般建议采用cacheupdate模式!

但是如果是批量更新数据的话强烈建议用 update .. set ..
它在数据库后台执行,效率当然高多了!

830

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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