用VB 6 + Oracle 8.05做的2层系统,要执行一个有4个回滚断点的事务,速度特别慢.其中有要执行insert,update,delete,select语句. 问题(1): 客户端提交SQL语句,SQL语句是在client端,还是server端编译 ? 问题(2): 数据insert,update,delete处理是先下载到client端处理后再提交到server端(这样网络负荷很重,速度当然慢),还是直接在server端处理? (如果是后者用存储过程在server端处理大量数据显然能解决问题). 问题(3): 我的系统慢的主要原因是什么? 问题(3): 怎么解决???
解决方案 »
- System.Drawing.SizeF(8.0!, 16.0!)中的感叹号什么意思?
- 打印CAD文件的问题
- 如何用API控制另一程序的工具栏
- 我快要去面试了,大家给点意见吧
- 菜单求简单问题“用户定义类型未定义”
- 用什么GRID控件能作出两层表头?
- 我使用shell_notifyicon函数使得正在运行的程序以小图标的形式显示在右下角的状态栏上,程序窗体被隐藏,怎样才能通过状态栏上的图标来关闭程序?
- 如何在mdiform中将一幅图片作为背景,随着窗体大小,图片同时缩放。
- 我想把两个表中的字段提出来放在一个DATAGRAD网格中,怎么办???
- VB应用程序如何与DOS下的应用程序之间产生快速的数据交换?急
- 各位高手,大家好。关于用代码附加sqlserver2000数据库的问题
- 模式窗体显示时不能显示非模式窗体?万分火急!!在线等啊!
1。户端提交SQL语句,是在server端编译
2。数据insert,update,delete处理是直接提交到server端处理,然后server端再返回数据给客户端。对于这一点,我有90%的保证。因为我在客户那里做过同样的操作,然后我打开服务器,看到了CPU在100%的运行,同时内存在缓慢上升,内存上升的原因我认为是服务器在执行大的SQL语句时需要占用大量的内存做缓冲,然后再将缓冲中的内容返回到客户端。
3。你的系统慢的主要原因可能是:a)你的cup处理能力有限;b)你的内存空间有限,如果基本内存太小,系统将会频繁的访问硬盘上的虚拟内存空间,这样势必速度会慢一个数量级;c)你的数据库设置是否合理,比如锁的设定是否足够大,为应用程序分配的内存是否过大,tempdb是否太小,数据库的日志是否已经满了
4.解决方法:根据问题的所在做相应处理。以上观点不能保证完全正确无误,希望大家来共同探讨。