向高手讨论: 从桌面型数据库向sql server转换的编程烦恼!!! 1.你没有建索引吗?10万记录虽不算什么,但也没必要一下子全显示(select)出来吧?2.还是同1,在尽量少的记录集里locate3.那是你自己没有将table控件的属性设置正确另:一般不用table而用adoquery 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 回答 pbsql(风云): 我没建索引? 本人开发软件已经7年, 不可能这么苯把????1. 当然不会显示10万记录,只是比出其慢. 有一个商品库,5000记录,客户喜欢打开浏览,然后更改一些数据, 或者定位某个记录修改数据. sql server 不支持seek的定位查询(我测试n次) .locate需要1秒时间, 客户很不满意! 3. 我花了2天时间, 比较ado的 cursorlocation, cursortype, locktype等对表操作的影响, 现在还记忆有新, sql server 表不支持打开状态下,改变索引!!!2. 关键问题你还没回答, 用什么方法解决 .seek 不到??? 5000记录,为什么非要到结果集里seek呢?就是直接到数据库里查找那条记录也不至于用1秒的你是用bde而不是ado吧,建议用ado 尽量不要绑定到recordset 和 table 什么的.seek的速度也比较慢 我觉得还是用sql语句比较好 再回答 pbsql(风云): 因为客户喜欢在grid里改数据,(客户是上帝啊!!!)所以他浏览住东西时,有时想在grid里定位某个记录,然后他可以对其,及其前后的记录处理.我也知道select 那记录很快, 可是如何能定位在grid里??? 所以客户用习惯一个东西, 新东西没有相类试的功能, 他是很反对新东西的!!!我当然在用ado, tangyongyi(tyy) :dephi的grid我没有用过vb的我用过,有几种我忘记了:我开始用的是最简单的网格控件,先把记录取出来,然后用循环填写到网格里,用户仍然可以修改删除。从表面上看和绑定的没有任何区别。楼主有7年的开发经验,应该知道以前是没有绑定控件的。还有一点,无论数据库里的数据量无论有多大,但用户需要的只是很小的一部分,界面上显示的也只能是很小的一部分 我来说说:1.你没有必要一次把10万条记录全部取出,即使用户要用grid操作。可以采用分段存取的技术,这在delphi的技术资料中很易找到,不信,你到大富翁论坛上看看。2.难道你不知道ADO的缓存更新机制吗?你用的是普通的即时更新,当然会存在这个问题。用缓存更新就不会了。缓存更新是把用户需要的数据一次取到客户端,由客户进行编辑修改,最后才一次提交到后台。这样,用户编辑和查找的速度是很快的。3.排序问题:用一下第三方的grid控件,好多是支持按任意列排序的。建议你用adoquery,设置其更新模式为缓存更新。不要用adotable楼主搞了7年软件开发,难道都是在开发单机版吗?还是C/S的程序锻炼人啊。建议以后放弃单机版吧。 弱弱的问题。。。。 查询语句出错,帮我看看 如何增加行数字段 sql 去除重复数据 数据库有几种连接方式 SQL数据库监控问题? 请问谁有订阅于发布的资料 请教如何识别字符串中有哪些符号。 我用导出语句有选择的导出数据,其中where条件中需要加单引号怎么办啊? 我想学习编数据库应用程序,是该在这里拜个老师呢?还是去报个学习班? tomcat连接sqlserver2000的问题 请问插入数据时如何实现这个功能?
我没建索引? 本人开发软件已经7年, 不可能这么苯把????
1. 当然不会显示10万记录,只是比出其慢. 有一个商品库,5000记录,客户喜欢打开
浏览,然后更改一些数据, 或者定位某个记录修改数据. sql server 不支持seek的
定位查询(我测试n次) .locate需要1秒时间, 客户很不满意! 3. 我花了2天时间, 比较ado的 cursorlocation, cursortype, locktype等对表操作的
影响, 现在还记忆有新, sql server 表不支持打开状态下,改变索引!!!2. 关键问题你还没回答, 用什么方法解决 .seek 不到???
.seek的速度也比较慢 我觉得还是用sql语句比较好
因为客户喜欢在grid里改数据,(客户是上帝啊!!!)所以他浏览住东西时,
有时想在grid里定位某个记录,然后他可以对其,及其前后的记录处理.
我也知道select 那记录很快, 可是如何能定位在grid里???
所以客户用习惯一个东西, 新东西没有相类试的功能, 他是很反对新东西的!!!我当然在用ado,
楼主有7年的开发经验,应该知道以前是没有绑定控件的。还有一点,无论数据库里的数据量无论有多大,但用户需要的只是很小的一部分,界面上显示的也只能是很小的一部分
1.你没有必要一次把10万条记录全部取出,即使用户要用grid操作。可以采用分段存取的技术,这在delphi的技术资料中很易找到,不信,你到大富翁论坛上看看。
2.难道你不知道ADO的缓存更新机制吗?你用的是普通的即时更新,当然会存在这个问题。用缓存更新就不会了。缓存更新是把用户需要的数据一次取到客户端,由客户进行编辑修改,最后才一次提交到后台。这样,用户编辑和查找的速度是很快的。
3.排序问题:用一下第三方的grid控件,好多是支持按任意列排序的。建议你用adoquery,设置其更新模式为缓存更新。不要用adotable楼主搞了7年软件开发,难道都是在开发单机版吗?还是C/S的程序锻炼人啊。建议以后放弃单机版吧。