越来越觉得delphi烂!(0分)

  • 主题发起人 主题发起人 softman11
  • 开始时间 开始时间
晕,你没看过一些vc的h文件,里面很多函数的声名类型都是pascal呀,哈
 
这种争论很无聊哎。你懂VC,那你就不要用delphi写这个应用嘛。
这么多人用delphi实现你的功能没有问题,你自己不会,就发这种标题来哗众取宠。

萝卜青菜各有所好。大家还是头埋头做事吧。

 
所有的API都是Pascal调用方式,而Delphi默认却变成了寄存器方式
 
哈哈,在Win16下有两种约定:C 和 PASCAL(根据参数传递方式的不同)
STDCALL是C约定和PASCAL约定的混合体,它规定参数的传递是从右到左,恢复堆栈的工作交由被调用者

btw:技术是用来解决问题的,不是用来炫耀的,争论无意义,什么时候该用什么就用什么!
何必强求呢?



 
softman11,我不会庆幸我使用了vc来做毕业设计,
那些dc弄的我发昏,毕业时我才发现我写的东西似乎就是一个SDK程序,so faint!!

 
高手不要在争了你们帮小弟一下吧?????一、表结构

1、表TK结构:
N1:string; ->名称
N2:string;->内容
t11:string:->类型
tk表存有记录30000条。

2、表f-leixin结构:
F1:string;->标识名
leixin:string:->类型(有200个不同类型)
YTI:integer;->记录数
LX表存有不同“类型”的记录200条。

3、我用ADO连接ACCESS数据库。


二:要实现的目的。
我想把TK表里符合f_leixin表类型的记录全部查询出来, 并将查询结果进行计数, 然后将值存入
f_leixin表的YT字段。
三: 我自己的编程
我主要是用加循环遍历的方式,用一条SQL语句,先进行查询统计、替换,然后循环f_leixin表,
这样查询的字段值就会根据随着LX表的指针移动进行变动,就实现了上述要求。
代码如下:
while not adotable2.eof do begin
lx1:=adotable2.fieldbyname('leixin').AsString;
lx1:=trim(lx1);
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.sql.add('select count(*) as lnfen2 from tk where t11 like ''%'+lx1+'%'' group by t11');
adoquery2.Open;
lnfen2:=adoquery2.fieldbyname('lnfen2').asinteger;
adotable2.Edit;
adotable2.fieldbyname('yti').asinteger:=lnfen2;
adotable2.Next;
end;
end;
四:问题???]
用我自己的代码很慢,很慢。在网上别人告诉我这样可以:

begin
adotable2.Open;
adotable2.edit;
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.sql.Add('update f_leixin set yti=(select count(*) from tk where f_leixin.leixin=tk.t11 )');
ADOQUery2.ExecSQL;
adoquery2.sql.clear;
adoquery2.sql.add('select * from f_leixin');
adoquery2.open;
END;
但是执行不了好像ACCESS数据库不支持此SQL语句。

请高手帮我想个办法,我搞了一夜啊。!!!!!



来自:xzh2000, 时间:2003-4-30 8:36:00, ID:1816056
终于搞清楚你要做什么啦,
其实问题时将表结构的创建语法及少许测试数据贴出来大家会更乐意帮你测试

按常规猜,你的TK.tt1与f_leixin.leixin内容是一样的。

update f_leixin
set yti = (select count(*) from tk group by tt1
where f_leixin.leixin=tk.tt1)

update f_leixin
set yti=(select count(*) from tk where tk.t11 = f_leixin.leixin )

因为是ACCESS,测试性能的方法很麻烦。



来自:20082008, 时间:2003-4-30 8:47:00, ID:1816097 | 编辑
用哪一句都不行呀??

我在ACCESS里调试:
提示不能在查询数据里进行更新。

原因或者是主建冲突,
或者是锁定冲突;
或者是有效性冲突;
但是我的TK表里有ID,F-LIXIN表里我把ID删除了也不行啊。???

你帮我吧。


来自:xzh2000, 时间:2003-4-30 8:51:00, ID:1816113
那可能ACCESS就不支持这种操作,
用SQL吧。


来自:20082008, 时间:2003-4-30 8:54:00, ID:1816129 | 编辑
可是我的后台数据库用的是ACCESS数据库啊。我不想转呀

你帮帮UP以下对了怎么给你分呀。

好像ACCESS数据结果统计出来了就是不知替换的问题???
你帮帮我吧

我很急的???


来自:卜泰男, 时间:2003-4-30 9:02:00, ID:1816172
UP!


来自:20082008, 时间:2003-4-30 9:07:00, ID:1816213 | 编辑
有一个网友告诉我这样好像可以:
select a.*,(select count(*) from tk where a.leixin=tk.t11) as c from f_leixin a

但是在在某些方面F—LIXIN表新增了一个字段C,它把所有的统计结果放在C里面不能放在指定字段YTI里面呀????


来自:trf, 时间:2003-4-30 11:00:00, ID:1816834
Update 语句应该这样写:
'update f_leixin,tk set yti=(select count(tk.*) from tk where f_leixin.leixin=tk.t11)


来自:20082008, 时间:2003-4-30 11:06:00, ID:1816857 | 编辑
我用的是ACCESS数据库

update f_leixin,tk set yti='select count(tk.*) from tk where f_leixin.leixin=tk.t11'

运行不了呀。


来自:trf, 时间:2003-4-30 11:48:00, ID:1817133
对不起,写错了,应该:
'update f_leixin,tk set f_leixin.yti=(select count(tk.*) from tk where f_leixin.leixin=tk.t11)


来自:20082008, 时间:2003-4-30 11:58:00, ID:1817168 | 编辑
你再帮我试一下在ACCSSE里不能运行提示:
select count(tk.*) from tk where f_leixin.leixin=tk.t11有错误啊


来自:trf, 时间:2003-4-30 12:03:00, ID:1817195
试一下
'update f_leixin,tk set f_leixin.yti=(select count(tk.t11) from tk where f_leixin.leixin=tk.t11)


来自:20082008, 时间:2003-4-30 12:08:00, ID:1817220 | 编辑
还是不行啊是不是ACCEES不支持啊。

运行后提示不能更新查询结果呀???
大哥你帮我UP以下吧求你了。


来自:trf, 时间:2003-4-30 12:36:00, ID:1817331
对不起,应该这样,先创建一个表T1,存放满足下面条件记录:
select tk.t11,count(*) as A from tk,f_leixin on tk.t11=f_leixin.leixin
group by tk.t11
然后Update语句:
'update f_leixin,T1 set f_leixin.yti=T1.A where f_leixin.leixin=T1.t11



来自:20082008, 时间:2003-4-30 13:05:00, ID:1817424 | 编辑
第一句有问题执行不了




 
[red]asm < pascal := c < object pascal < c++
delphi := vc < bcb
,还有谁不满意?[/red]
 
四十年来画竹枝
日间挥写夜间思
冗繁削尽留清瘦
画到生时是熟时

[:D][:D][:D][:D]
 
说这家伙不懂ADO,还不承认,无知的烂仔!!
让你懂ADO就是让你看ADO源码?!傻冒!!
ADO是微软的,是你崇拜的公司的东西,这都不知道!?笨蛋!
微软的东西你能看到源码?蠢猪!
你对Windows API很有研究,是吧?你看到过他的源码?!
你要深入了解Windows操作系统,你看到过他的源码?
看你的头呀!你就是跪在微软的后面添人家的屁股,人家也不
会给你源码看的,傻瓜!
你说看不到最新数据,怪Delphi,那么在用VC++时出现问题,为什
么不怪VC++呢?说明你根本就是心中有鬼。
不要炫耀你对VC++多熟悉,当我用VC++的时侯,甚至用Microsoft C++
的时侯,不知道你还在什么地方吃奶呢,哈哈,居然现在也敢自称
对VC++精通,自认为了不起!
使用用VC,没有1。2年功夫是很难用他来作商业程序的
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
这么说你是用了1,2年了?靠,我用了10年,也没有你那么狂!
你崇拜VC++,就崇拜去,没人会理你,可你居然在这里放屁!!

对大家的问题说一下:
1:如果各位要得到数据库的记录,在单机下,RecordCount是没有问题的,
不过对于记录数比较多的表,建议使用 select count(*) from table
不过,在VC++中却不能直接使用RecordCount得到记录总数,除非已经遍历
过整个表了。
2:如果需要最新数据,采用ADOTable,联网操作,那么,光标位置一定
要是CursorLocation := clUseServer; 如果可能,光标类型设为
CursorType := ctDynamic
那么你就可以看到其它用户对数据的修改和添加了,否则
如果CursorLocation :=clUseClient,你是看不到其它用户对数据库
的修改和添加的数据。当然,只有桌面数据库才有纯Table的操作,所以
如果不是桌面数据库,大家最好是有ADOQuery,不要使用ADOTable,
因为在大型数据库中,所有Table的操作,也是用 select * from tablename
来做的,而且,你需要多少数据就取多少,一次取几千上万条数据
的设计是不好的。添加数据、修改数据如果可能的话,用Insert和Update这两个
SQL语句。如果每次也就是操作部分数据,或者表中数据很少,就用ADOQuery来做,
每次都用select * from tablename来做,当然,如果是单机就无所谓,直接
用ADOTable就可以。

楼主真是个无知的家伙!

撑船不行怪河弯!
 
没有全部看完,不过可以肯定,你不懂ADO。就谈不上用ADO了。好好学学ADO,不要怪
DELPHI不好
 
api的格式是什么?不要告诉我是pascal吧?是c/c++.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
是你的头呀!
靠,连WINAPI就是Pascal格式都不知道,你还狂什么狂,
回家喂猪去吧,保管个个都喂的肥头大耳,都跟你一样:蠢猪!
 
楼主已经被骂的.................
 
ss2000:这样说楼主好象过火了,我们来这里主要是进行技术交流,我认为这里
的DFW都是朋友,有事情大家一起来解决.很感谢你(ss2000),你说的东西又让我学了一招。
 
你很白痴啊!Delphi是最好用得。
只是有好多老板也和你一样白痴,搞得Delphi现在工资不如其他得高!
 
我想大家有个概念还没有区分,

Delphi(Object Pascal语言从Delphi7开始正式叫做Delphi语言)和C++
比起来是各有千秋,一个是符号化的语法体系,追求的是简洁致约,一个是接近自然语言的
语法规则,追求的是易读明了,C++语法的缩写也是一种技巧,我见过一个求PI值到
小数点后2000位的算法,C/C++只用了四行代码,看起来简直不可思议,有人说是外星人写的
我将其翻译为Delphi语法,写了三十多行代码,程序所做的事情基本一样,编译后的代码
执行效率也十分接近。对于这个算法,不管是用4行C来写,还是用30多行Delphi来写,
我想,普通的人都是难以看懂的,因为算法太深奥了,和数学有关

我最早学习了Pascal学的成绩很好,随后学了C,成绩也很好,之后汇编和C++,成绩都很好
甚至可以说我对C和C++原来远比Pascal要精通,在那时候,哪一个人说C++ 是世界上最好
的语言,我都决不反对。对于这几种语言,我是边对比边学习,所以事半功倍

按照我现在个人的看法:
C/C++曾经被广泛的使用,很多著名的算法都是用C写的,主要的目的是便于移植,
主要的原因是C/C++拥有最庞大的用户群,作为一个程序员,不能不懂C/C++

C/C++的优点(相对于Delphi来说): 语法简洁,程序员代码输入负担小,
拥有最庞大的用户群,曾经被某些人奉若神明,跨平台,便于移植,拥有最成熟
的优化编译技术,某些编译器能够产生极度优化的机器编码
缺点:编译速度较慢,对象的指针引用极不方便,也不好看,可读性差

Delphi的优点(相对于C++来说):代码接近自然语言,风格优美,
头文件和源文件合二为一,代码更加紧凑,某些地方更加灵活,用点来进行对象引用,
美观方便,开域语句使源代码变得简洁,编译速度快,语言简单易学,
完全的面向对象
缺点:不支持多重继承和运算符重载,源代码较为冗长

 
其它的很多地方倒是很相似的,对于一个API函数调用,
从语法上看,你甚至看不出来是C/C++写的,还是Delphi写的

我也曾经不喜欢begin 和 end ,老是多打几个字,很罗嗦,不如C++爽
但我知道Delphi语法的原则是接近自然语言,增强可读性(这点很重要)

C/C++并不等于MFC,我对MFC的众多批判,并不是针对C/C++,
我没有批判C++Builder,因为,最起码C++Builder比VC++好用多了,

人们提到VC通常指的就是MFC,我对MFC的痛恨由来已久,他高高在上,我始终难以驾驭它
在MFC中的一个注册表对象的封装,竟然不支持读写二进制数据,使得我对MFC更加失望
我想用API来完成,费了很大的功夫,竟然没有成功,无奈,最后将二进制数据转化为
字符串来保存了事

熟悉MFC的人,你可以数一数MFC中有多少个类,每个类的功能如何,
你再看一下VCL,有多少个类,类的功能有是如何,我的一个精通VC++和C++Builder的朋友
说,VCL比MFC先进多了,复杂度是MFC的好几倍,和VCL比起来,MFC实在是哄小孩子的玩具

所以说,如果一个人在批判VC,但是没有批判C++Builder,那么,他批判的是MFC
 
转载:关于C++之父的一篇访谈
在1998年的元旦,Bjarne Stroustrup(C++之父)接受了IEEE《计算机》杂志记者的专
访。编辑很自然的认为他会对于过去七年来使用他创建的语言进行面对对象设计做一个
历史性的回顾。而在这个专访中,记者获得了更有价值的新闻,但是最后编辑决定为了
整个IT产业,这个稿子不能发表,但是就像其它被砍掉的新闻,往往还是弄得路人皆知
的。
这一篇适当时专访的完全拷贝,没有被编辑、删改或者做过什么润色处理,也没有发布
过,可能看起来不像常见的杂志文章,但这是实情。
你会发现真正引人入胜的地方... ...
记者: 您在几年前你改变了软件设计世界的面貌,现在再回首往事您有什么感想?
Stroustrup: 事实上我在你到来之前的这些天里一直在考虑这件事,你还记得几乎所有
的人都在写 C程序那会儿吗?麻烦的是这些人写得太好了,而且那些个大学也都在努力
的传授 C编程技术。的确他们是十分的成功——我要特别的指出“成功”这个词——因
为这种显著的 C程序员的培养效率,这就是产生问题的原因。
记者: 这难道是个问题吗?
Stroustrup: 当然,你记得大家都在用Cobol语言写程序的时候吗?
记者: 哦,当然,当时我也一样。
Stroustrup: 在一开始的时候,这些人简直象半个上帝似的拿着高工资,享受着贵族一
样的待遇。
记者: 唉,那些日子多么的让人怀念,是吧?
Stroustrup: 当然了。但是接着发生了什么?IBM觉得这样不舒服,就投资了数百万来
培养程序员,直到程序员多得一毛钱就可以雇一打。
记者: 这就是为什么当时我撤出来了,工资在一年里就降到人们在说做个记者都比程序
员强的地步。
Stroustrup: 对啦!那时侯相同的事情发生在了C程序员身上了。
记者: 这个我明白了,可是您要说的是……
Stroustrup: 有一天,我坐在办公室里就在想如何能把这件事挽回一些。我想知道如果
有一种特别复杂而且难以学会的语言,是否就没有人可以又把程序员们搞到市场的泥潭
里去呢?我用了从X10里了解到的东西,,噢,就是X-Windows,真是一个该死的图形系
统,只能运行在那些个SUN 3/60的机器里,哈!它具有所有我想要的特征:可笑而复杂
的语法,含混的功能描述,还有伪装的OO结构,就算是在现在,还是没有人愿意用那些
东西,如果你不想发疯的话,Motif才是唯一解决方案。
记者: 你是在开玩笑吗?
Stroustrup: 没有,事实上还有另外的一个问题,UNIX是用C写的,就是说任何一个C程
序员都可以很容易的成为系统程序的开发者。还记得一个大型的主机系统应用的开发者
通常能挣多少钱吗?
记者: 你肯定是知道我当时就是干这个的。
Stroustrup: 好吧,因此这个新的语言一定要通过隐藏所有的系统调用来和UNIX分离开
来,这样可以使那些个就只是知道DOS的人也可以活得很体面。
记者: 我不大相信您说的这个……
Stroustrup: 而且到现在时间也够长的了,我相信有很多的人已经指出了C++是对时间
的浪费,我要说的是,这个过程比我想象的要长的多了。
记者: 那么您又是如何做到的呢?
Stroustrup: 那只是一个玩笑,我真的没有想到人们会对那本书那么认真。任何人只要
长了半个大脑也应该明白面对对象编程是荒谬而不合逻辑的,而且效率低下。
记者: 什么?
Stroustrup: 再说代码重用,你什么时候听说过有公司重用他的代码?
记者: 事实上从来没有,但是……
Stroustrup: 那么我提醒你一下,在早期有很多的例子。哦,有一家叫Menter
Graphics的俄勒冈州公司,我认为他们应该是感冒了,竟然在90年或者是91年把所有的
代码用C++重写了一遍,对不起,我实在是想不起确切的时间了,我看大家应该从这个
事件中吸取教训。
记者: 没有人真正的吸取了教训吗?
Stroustrup:
没有,而且还有很多公司犯同样的错误,还向他们的股东解释说那3亿美圆的损失是正
常的,他们就是做了这样的事情。
记者: 真的?可是这也只能证明OO方法是能够工作的,不是吗?
Stroustrup: 也许吧,执行文件是那么大,在一台有128M内存的HP工作站上只是装载到
内存中就要用5分钟时间,然后将象毛毛虫爬树一样的运行。事实上我在第一个礼拜就
发现了这个缺点,奇怪的是好象没人在乎这个,Sun和HP好象只在乎买出那些功能强大
的各种玩意儿,而不在乎在上面跑什么程序。在AT&.T的时候我编了一个“Hello
World”程序,简直是难以置信,执行文件有2.1M。
记者: 那么大?是啊,就是从那时候开始的编译程序产生大个的文件的。
Stroustrup: 就是这个样子,如果你不信的话,可以用最新版的g++试一下,你得到的
东西不会小于0.5M,而且就在最近也有一些在各个国家的例子,比如在British
Telecom公司发生的灾难,但是幸运的是他们把原来的计划废弃了,又重新开始,他们
就比Australian Telecom公司幸运,现在我又听说Siemens公司又在造“恐龙”了,他
们目前是越来越担心要用来加速执行软件所要使用的昂贵的高速硬件,难道你真的认为
那些个多态继承是一种乐趣吗?
记者: 噢,但是C++的确是一种可靠的语言啊!
Stroustrup: 你是真的相信的,对吧?你有没有真的坐下来用C++开发过项目?我来告
诉你会发生什么:首先,我会加入足够的缺陷来让那些微不足道的模块先执行,让工作
超载,在工程扫尾的阶段,你回发现几乎所有的模块都会有这种缺陷,这是因为人们以
为就是应该这样做,因为在C++的教程中就是这样写的。在相同的模块中执行不同对象
的相似操作意味着:有一些东西在各个模块中是完全不相同的。当你有了互不相同的上
百个这样的模块,就可以把他们集成在一起了。其次,我再说说所谓的数据隐藏,上帝
啊,当我听说了有的小组实现了什么对象协同通信,我真的是憋不住想笑!我看,OO方
法中的“协同”这个词可以把项目经理的肋条累断。
记者: 我不得不说着太可怕了!你还说这是用来提高程序员的工资,这太龌龊了!
Stroustrup: 龌龊?不是这样的,任何人都有选择的权利。我是并不想让事情发展成这
个样儿的。不管怎么说,我基本上还是成功的。C++现在已经不行了不是?而且程序员
现在还是能挣到高工资的——特别是那些还要维护这些该死的“++”东西的那些程序
员。你应该明白如果你去维护一个不是由你开发的C++模块是不可能的。
记者: 怎么会这样的?
Stroustrup: 你糊涂了?还记得typedef吗?
记者: 噢,当然。
Stroustrup: 知道要在头文件里发现象'RoofRaised'这样的变量是一个双精度数要用多
长的时间吗?想象一下要在一个工程里所有的类定义里寻找那些typedefs
... ...
... ...
记者: 那么你为什么认定你已经成功了呢?
Stroustrup: 还记得一般一个C程序项目要多长时间吗?一般是6个月。这对于一个要养
活妻子孩子的程序员是不够的。如果是一样的项目,但是用C++来开发,会怎么样呢?
我告诉你:要一两年才能做完!这不好吗?就是一个小小的编程语言选择的决定,语言
程序员就不会轻易的下岗了不是?而且那些个大学已经很久没有传授C了,现在是对C程
序员的短缺。特别是对UNIX编程熟悉的程序员。在使用了这么多年的“new”以后,而
且一直以来一直都不用担心返回值的问题。还有多少程序员知道使用“malloc”?事实
上,大多数的C++程序员舍弃了返回值,无论什么样的结果,甚至于返回了“-1”,其
实用不着什么'throw'、'catch'、'try'之类的东西,至少你应该知道产生了错误。
记者: 但是继承的确不是可以节省很多时间的吗?
Stroustrup: 是吗?你注意过C项目计划和C++的项目计划之间的不同吗?在进行了三次
系统功能分解后,要确定所有的东西都可被继承到,如果没有那么说明还是有错,但是
有谁在C编程里听说过存储渗漏这个说法?现在你可以在业界的大厂商的产品中发现了
!有很多的公司不得不放弃了,并且把工程转包出去,他们知道最后可能象筛沙子似的
把内存站用完,他们才不想遭那份罪呢!
记者: 也有一些工具来……
Stroustrup: 大多数的防渗漏的工具不还是用C++写的。
记者: 果把这些东西发表了,我们可能在这个行业里无法立足了,你知道吗?
Stroustrup: 我不相信,就象我所说的,现在C++已经是在垂死挣扎了。任何公司只要
清醒,就会认识到用C++来做项目简直是一场灾难。如果还没认识到这些,那就是活该
!有一段时间我使劲的劝Dennis Ritchie用C++重写UNIX。
记者: 啊?天哪!他是怎么说的?
Stroustrup: 我不得不承认他的洞察力,我想他和Brian在很早的时候就清楚的明白了
我的意图,但是从来没有说出来,他说如果我愿意的话,他可以帮我用C++写
个DOS。
记者: 那么你写了吗?
Stroustrup: 事实上,我写了,我完成后可以给你一个DEMO,我在机房里的一台4个CPU
的Sparc 20上做的,运行得特别的快,而且只占了70M的硬盘空间。
记者: 有For PC的版本吗?
Stroustrup: 现在你在开玩笑了,难道你没见过Windows 95吗?我认为它是我成功标志
之一,
记者: 我也总是在想关于Unix++,还是有人在试着搞这么个东西的。
Stroustrup: 那是因为他们还没有看到这个采访手迹。
记者: 对不起,不过依我看,我们恐怕不会刊发这些东西的。
Stroustrup: 但是这是个世纪故事,我只是想让我的程序员伙伴们记住我为他们做了什
么,你知道这些个日子里C++程序员可以挣多少钱吗?
记者: 我所听说的是一个顶尖的C++程序员一小时可以挣到70~80美圆。
Stroustrup: 知道了吧!而且我打赌他肯定可以挣那么多!!单步跟踪我放在C++里面
的那些gotcha,并不是容易的事了。在在项目中使用C++的所有特性即使是有经验的程
序员也会感到困惑. 事实上有时侯我也是觉得挺难受的,虽然这个特性是为我的初衷而
做的,我几乎喜欢上了这个语言。
记者: 你的意思是说你以前是不喜欢的?
Stroustrup: 我是狠它的!难道你不同意它是挺笨重的吗?但是当那本书的版税源源不
断的…… 我想你能够明白这些。
记者: 等一下,关于参数的定义,请您一定要回答,您是否真的改良了C的指针。
Stroustrup: 呵,我也是总是想知道这个。一开始我认为我做了,但是有一天我和一个
刚开始学习 C++的程序员讨论了这个问题。他说:“他从来就不知道他的变量是否被引
用了,所以我还是在使用指针,那个星号总是在提醒我。”
记者: OK,一般在这个时候我一般是说:“Thank you very much.”,但是现在用在这
里好象还是不够。
Stroustrup: 答应我一定要发表。
记者: 好的,我会通知您的,但是我已经知道了我的编辑会说什么了。
Stroustrup: 谁会相信呢?你能把这盘录音带给我拷一个吗?
记者: 可以。
正文完
 
kk2000:我说的过火?一点没过,我还嫌不够呢!他是来交流,请教技术问题的吗?
不是!那还和他客气什么!如果他是来交流的,请教问题的,我想绝对没有人骂他!
可现在,我还要骂!

>count2:=0;
>form1.LocalADOTable1.Close;
>form1.LocalADOTable1.Open;
>form1.LocalADOTable1.First;
>while not form1.LocalADOTable1.Eof do
> begin
> count2:=count2+1;
> form1.LocalADOTable1.Next;
> end;

>//count2:=Form1.LocalADOTable1.RecordCount;
>label4.Caption:='成功获取数据完成,服务器上查询出 '+inttostr(count)
> +' 条记录,复制成功 '+inttostr(count2)+ ' 条记录';

这是softman11获取记录数的代码,笑死我了,写这样代码的人,怎么说也谈不上
高手吧。这就叫水平高呀,这就是用VC++的人的水平?别在这里丢人了,把真
正VC++高手的脸都丢尽了,我作为VC++程序员之一(我更是Delphi程序员之一,
只不过VC++使用时间长些,但现在更爱用Delphi),开除你的VC++程序员资格。
还有,这家伙的SQL水平也糟糕透顶!
 
ss2000:你是怎么弄人家的代码来的,你这人真好玩。我都是象他一样写的,刚开始
学习DELPHI的时候。
 
后退
顶部