在delphi远程数据库的客户端中,如何编写带有参数的增加、删除、修改数据库中数据

 我来答
wdanwu
2009-10-11
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
是delphiC/S模式下三层的架构下远程更新数据。在客户端中, 编写带有参数的查询知道可以这样写:

ClientDataset1.close;
ClientDataset1.CommandText:= 'select * from ksf where 准考证号 =:zkzh';
ClientDataset1.Params.ParamByName('zkzh').Value:=edit1.text;
ClientDataset1.open; //运行很顺利,但下面删除的编写却出问题,因我想删除指定的数据后,能返回删除后所有的数据记录:

ClientDataset1.close;
ClientDataset1.CommandText:='delete from ksf where 准考证号 =:zkzh';
ClientDataset1.Params.ParamByName('zkzh').Value:=edit1.text;
ClientDataset1.open;

//运行后,出现了错误:
Project keProject2.exe raised exception class EOleException with message 'ADOQuery1: CommandText does not return a result set'. Process stopped. Use Step or Run to continue.

在query组件中,要执行delete、insert、update 必须调用execsql,不能用open,这里用了ClientDataset1.open;是不是出现错误的原因,有说,ClientDataset.ExecSQl;不会有这样的方法。该怎办?请给个具体例子好吗?谢谢
changjeff
2009-10-09 · TA获得超过804个赞
知道小有建树答主
回答量:2008
采纳率:54%
帮助的人:843万
展开全部
好像ClientData里面有参数设置的,好久不用,忘记了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zxw6720
2009-10-10 · 超过16用户采纳过TA的回答
知道答主
回答量:50
采纳率:0%
帮助的人:42.4万
展开全部
不知道你是啥意思?

猜测下,可能是C/S模式下三层的架构下远程更新数据.
如果是的话,那说来就话长了。一般三层架构客户端的编程需要和中间层进行沟通,看看你用的数据控件是什么。根据你的控件选择不同的数据控控件,所以对数据库的操作也不一样。一般是用到ClientData。

如果是2层的话,比较简单,和普通单机开发没啥两样。如果用ADO的话,用ADOquery比较方便。这种方法在网络上搜一下一大把。

其实你的问题应该描述的更明白些,比如什么架构,几层,针对啥样的数据库。针对你这样的描述,我想很多人都无从解答的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式