当前位置:主页>仓库管理软件> 列表

实在不敢相信,borland的数据库存取技术竟然和微软的差 找商品管理软件

仓库管理软件版1楼: 我本来做这个测试是想看看borland的到底比微软的要快多少,谁知是这个结果!
.net平台
用bdp技术:结果12640毫秒
int count=0;
count=System.Environment.TickCount;
for (int i = 0; i < 100; i++)
{
DataTable Table=new DataTable();
bdpDataAdapter1.Fill(Table);
}
count=System.Environment.TickCount-count;
Text=count.ToString();
用微软的sqlConnection:结果3360毫秒
int count=0;
count=System.Environment.TickCount;
for (int i = 0; i < 100; i++)
{
DataTable Table=new DataTable();
sqlDataAdapter1.Fill(Table);
}
count=System.Environment.TickCount-count;
Text=count.ToString();

用delphi下的win32的DBX,结果6969毫秒
var
i:Integer;
count:Cardinal;
begin
count:=GetTickCount;
for I := 0 to 100 - 1 do
begin
ClientDataSet1.Close;
ClientDataSet1.Open;
end;
count:=GetTickCount-count;
Caption:=IntToStr(count);
end;

无论是那种技术,都比微软的慢很多啊,既然慢这么多,为何还要出自己的BDP?李维还将这个技术说得很好。

是不是要设置什么属性呢?我还真怀疑自己的眼睛!
我是在BDS2006下测试!

2楼: 如果你觉得delphi不好的话,就不要用
什么存在都有她的道理
你比 李维 强吗
没有吧,那你干吗存在呢~~~ 如用excel制作进销存

3楼: 呵呵,我就知道有人会这么说的
我拿出测试数据出来是想要找出存在差异的原因,不要动不动就拿出这些大道理来
还人身攻击呢!
如果你真有本事就找出差异的原因!

4楼: 一个简单的对比就下结论了,网上说MS技术不好的大把呢,按你这个逻辑,MS早就关门了。

5楼: 速度只是一方面,有全面的了解才好下结论

6楼: 经过测试
李维 写过好多书
lzf1010 没有
。。。。。。。。。。。。。。。。。。。。。。。。。。。
这可以证明。。。。。。。。。
[无论是那种技术,都比微软的慢很多啊,既然慢这么多,为何还要出自己的BDP?]
你这是对borlang的 人身攻击~~~~~~~~~
你不行,不要说人家不行~~~~~~~~~~~~
你做一个比borlang更快的~~~~~~~~~~~

仓库管理软件版7楼: 老弟,不要那么冲动嘛,我想问你几个问题,你试过用sqlConnection连接oracle、mysql、sybase这些数据库吗,我是说就用sqlConnection,不是oleConnection,麻烦你把他们的连接测试结果贴出来好吗?

8楼: 我前一段看过李维写的一本关于DBX的书,他作过测试是你说的结果,不过最后说达什么条件怎么设的就差不多了,没太注意。

9楼: 我觉得够用就可以了


如果你觉得慢的话,直接用MS来做数据库应用好了
用什么,只要自己喜欢就可以

10楼: 呵呵,sbzldlb这位兄弟没有一点钻研精神,注定只能一辈子当编码工人,我也不会和你一般见识

11楼: 你知道 为什么MS的sqlConnection快,而borlang bdp技术慢吗?
你研究了吗
你研究出来了吗?

12楼: 经过观察SQL的事件查看器,BDP没有自动启动连接池,SQLConnection自动启动连接池了,有两个数据库连接在取数据 如人力资源管理软件

13楼: 一个简单的测试下结论太过无断了~~
你测试的是什么数据服务器?
性能参数也不仅仅是速度而己~~

仓库管理软件版14楼: 经观察,BDP和DBX都没有在查询前执行sp_reset_connection这个存储过程来做优化,而SQLConnection执行了

15楼: 看来各位对这个帖子有所误解,我做这个测试只是想知道如何调整参数来到达最优化,我并不是下什么结论

16楼: lzf1010 的钻研精神很好,但不要轻易下结论。判断一个数据库系统的性能,恐怕不是几行代码就可以测试出来的。有兴趣的话可以参考李维的书,做一个较全面的测试。行家测试一般仅报告测试方法和得到的数据,下结论都很谨慎,从不轻易评价哪个好、哪个差。

17楼: 帮顶!

-------------------------------------
站长开发推广同盟 关注网站,关注技术!

海量源代码下载,二次开发绝佳站点

网址: http://www.source520.com
http://www.source520.net

18楼: 三思而后行,呵呵,精神可嘉

19楼: 用什么是个人爱好,有喜欢快的,有喜欢稳的.
我就是这样的.我的大量内存都用的美化桌面上了,那有什么样.慢一点而已,不过自己开心.
borland的东西真的是很慢,不过我喜欢.

20楼: 路过,
年轻人都好冲动!我也是呀
帮顶一下,暂不评论!!嘿嘿

仓库管理软件版21楼: 我知道一次国际数据库比赛中,宝兰击败众多高手夺冠!
楼主的意思可能是觉得宝兰数据库慢不可能,应该是哪里没设置好。但是你的标题这么出来,随便就下了结论,知道的高手可能不愿意解释的。

22楼: 好大家说的都很好,请继续讨论,帮顶!! 如商品管理软件

23楼: 帮顶

24楼: 因为MS的是默认装入1000条,用到后面才再装入.
Borland不设置的话是装入全部数据.当然会慢.
李维的书上和网站都有说的.只要把存取缓存设为一次取1000条的话,比MS的还是要稍稍快一点点的.
之所以默认设置是一次取全部数据大概是Borland的数据引擎必须考虑通用,而MS只要考虑自己的数据库就行了.

25楼: 我测试的那个数据表只有600多条记录,没有超过1000的

26楼: 哈哈,你在这里骂Delphi是送死来了....不知道这里都是用Delphi的啊....在这里骂微软估计没有什么反响.

27楼: 呵呵,骂也要拿事实嘛,用代码来证实delphi的确是擅长数据库的
但没有一个人能拿出来

贬低delphi的意思,我是怀疑我的眼睛,另外也怀疑是不是我自己不会用而已,是我的标题误导了大家

仓库管理软件版28楼: 态度端正一点估计大家都会跟你讨论这个问题,delphi就象我们的精神食粮一样,突然跑出一家伙把它骂得一文不值,心里多少有点不爽.呵呵...我是新手,请多指教,我到现在还不知道怎么测它的运算时间呢,能教我一下不...楼主.

29楼: 大部分人的回复都是废话,只会从情感上来骂人,说什么慢就别用之类的废话.
如果你知道为什么会慢的话就请出楼主哪里错了,应该怎么设置才是正确的方法.
当说一些楼主不如李维就导出楼主不应该存在的这些结论对这个问题毫无建设性可言,
简直就是人身攻击.
最后,我这贴也是废话,因为我没有做过这方面的测试也不知道所以然.

30楼: .net的稳定性还是差点
不过这是大势所趋,大家有也不要排斥.

31楼: 我们编程做软件不是看谁的软件速度快 ,主要还是 看代码的质量



打个比方说吧,一个高手 用 100条语句 完成了 工作,如一个新人 用了 500行,这中间,如何比呢

32楼: delphi的ClientDataSet1相当于三层了

33楼: 你穿的衣服越多,你脱衣服的时间就越长!很多问题,几乎没法说清!
delphi是个好工具,ms是个好公司,我们是个好程序员!一切ok!!
应用和内核不是一回事。一切就这么简单!

34楼: Delphi引以为豪的原本就剩下数据库了

仓库管理软件版35楼: 就算速度慢,也没有关系,有Money就行。[:D]

36楼: BDE确实比ADO慢很多,同样的查询语句,不用时间计时,肉眼就能感觉差得远。所以我从不用BDE。

37楼: 胆子真大啊!
不首先找自己的原因就来......
确实很打击人!

38楼: 为什么bde这么慢呢,谁能说说如何配置bde才能让它快起来,或者是borland的数据引擎是个什么精神,我们怎么用材能发挥它的优势,请明白的人不吝赐教。

39楼: 好就是好,差就是差,找出不好的地方,避免犯错误,这有什么不好
我欣赏楼主的做法
microsoft也有很多不好的地方,用心找出来,避免就是了
别把什么东西都当神

40楼: 做软件要有钻研精神。。。

41楼: 应该把首要问题解决了,再讨论其他问题。

也许是说者无意,听者有心。

仓库管理软件版42楼: bde现在已经停止升级了,在好久前bde就比不上ADO了,不知道你怎么还用bde

43楼: 呵呵,我说的是BDP啊,怎么扯到BDE上了?

44楼: 看来我是过时了
用DELPHI至今,没有正式用过BDE和INTERBASE
呵呵
一直都用ADO
因是一直不喜欢写一程序之余还要装上一大堆垃圾(至少我认为那是LJ)
垃圾总会很烦人的啊
兼容才是重要
速度不够可以用MONEY搭上,反正也不是每个人写出来的程序都要用来计算导弹轨迹的^^

45楼: 你连接的是ms sqlserver吧,你可以连接一下其它数据库,并且对表行数在10 1000 100000 各做一下测试。

不过我一般连接ms sqlserver用的是ado 不喜欢BDE

46楼: 我再重新声明一次,我说的是BDS2006下的BDP技术,不是BDE,是Borland在.net平台下的数据库存取技术
BDE在几年前就开始停止更新了

47楼: 别人说的是BDP,不是BDE。。。
没看清楚就瞎说,学Delphi的不会是这样的人吧?
怎么能用好Delphi啊?

48楼: [看来各位对这个帖子有所误解,我做这个测试只是想知道如何调整参数来到达最优化,我并不是下什么结论 ]

没下结论,那你帖子标题是什么?

仓库管理软件版49楼: to boylafong:
就算是我下结论吧,没有人能拿出证据来证明Delphi读取数据库的速度比MS的快,那这个就是铁的结论了
强调一下,到目前为止,没人能拿代码来推翻我的测试结果,那么这个就是结论!!!

50楼: to All:
不是都说数据库是Delphi的强项吗?怎么没有一个人能证明?还有谁不服气的?

51楼: var


i:Integer;
count:Cardinal;
begin
count:=GetTickCount;
for I := 0 to 100 - 1 do
begin
ClientDataSet1.Close;
ClientDataSet1.Open;
end;
count:=GetTickCount-count;
Caption:=IntToStr(count);
end;
win32,2344ms,不知道你的结果怎么来的?

52楼: 的确是强(delphi),不过我是指delphi7以前的。另外Clientdataset是要建立内存表的,所以需要一次从系统缓冲到内部缓冲的拷贝过程,我想是慢到这里了,不过clientdataset不是用来比速度的,而是用来做业务的离线处理的,我想楼主是否用错了地方?

53楼: to radtek:
麻烦你将.net下BDP和MS的SQLConnection的数据也贴上来!

54楼: 呵呵,好久不来了,还真热闹。

55楼: 呵呵,几天都没有人给出实质性的建议,令人失望,今晚十二点前结帖!

仓库管理软件版56楼: 问题可能没有那么简单,

以前用PB 的时候5000 条记录,几秒钟就可以全部检索到界面上
而Delphi却需要半分钟, 经过查找原因,优化后,和PB也可以不差上下了

所以,最好不要轻易下结论

有空了,我也试试看

57楼: 大家研究研究嘛,干嘛今晚十二点就结帖啊。

58楼: 楼主说的是昨晚,



我 初步研究了一下:
SQL Server 10000条记录的检索
BDE: 313 ms
dbx: 578 ms
dbGo(ADO): 313 ms
SqlDir: 563 ms

其它的还没有试,
不过应该差别不大

59楼: 实在不敢相信,borland的数据库存取技术竟然和微软的差这么远!!
---------------------------------------------------------------
楼主自己已经有了答案,当然没人会提出什么东东了

60楼: 呵呵,开这个帖子变成和别人吵架了,没意思,所以就结帖了
不过有兴趣的朋友可以继续研究一下这个问题

61楼: 多人接受答案了。

62楼: 通过这么一个帖子可以看到最近这几年毕业的人浮躁了很多,不愿意坐下来好好研究一下技术。
就算这个帖子是来踢馆子的,你也要用你所掌握的技术来制服对手。光这么骂是没有用的。
自99年开始扩招以来,大学生的素质就直线下降了(当然也有好的),我觉得人才是宁缺勿滥的。
看看近几年来论坛变得越来越浮躁,真替中国的软件业捏把汗,无论是.net好还是Delphi好,你别把它看得如此的神圣,说几句坏话就好像被别人踩到尾巴似的,说到底,这些都是老外的东西。我们学习它图的只是要混口饭吃。
信息技术对国家是越来越重要了,我们是不是要静下心来发展一下我们国家自己的软件技术呢?不过这需要很好的研究技术,可惜的是我看到氛围是越来越浮躁了。



再说说我做这个测试的起因
BDP和DBX都是Borland最新的数据库存取技术,分别用于.net平台和win32,特点都是针对每种数据库写一个Dll。而这些dll都是采用borland自己的C++写的。所以我猜想,既然DBX的表现如此的出色,那么BDP应该同样的出色吧。所以我才有了做个测试的想法,我要测试的是BDP和MS的比较。DBX的数据我是后来加进去的,原因是BDP和微软的差得太远了,所以加DBX的数据进去做个参照。DBX和微软的比并不差,因为Clientdataset提供的功能远比MS的多,所以损失了部分性能。我要比的重点在于BDP和MS的,遗憾的是很多人捉住DBX不放,但始终拿不出(还是没动手试验)有意义的东西出来。
或许是我起的题目太刺眼了,引起很多人的不满,在此向各位道歉了。

仓库管理软件版63楼: 试了一下 BDP ,和 dbGo 的时间差了 4-5 倍

不过还好,我们有多种选择

有空了可以再试试 Oracle 的速度