急问,请大家来帮忙,修改数据库时出错的问题

fromoon 2004-04-29 04:25:01
情况是这样的:
要修改数据库里的记录,用以下语句:

Table1.Edit;
Table1.fieldbyname('1').asstring:=Edit1.Text;
Table1.fieldbyname('2').asdatetime:=unit1.GetCurrentTimeFromServer;
Table1.Post;

会报错:eDBEngineError:Cabability not supported.....

另一个table2,指向数据库里的另一个表,其他设定都是一样的,用同样的语句却不会报错。
而且,如果是用table1增加条目也可以顺利进行,语句是一样的,只是开头为Table1.append.

请问这究竟是怎么回事,想要用table1修改条目应该怎么做?

数据库是oracle。
...全文
35 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ailibuli 2004-04-29
  • 打赏
  • 举报
回复
建议修正用Update SQL文
qizhanfeng 2004-04-29
  • 打赏
  • 举报
回复
保证edit1.text为数字
ailibuli 2004-04-29
  • 打赏
  • 举报
回复
Table1可能有一様的記録、多数個存在、
修正記録指針無法確定...
fromoon 2004-04-29
  • 打赏
  • 举报
回复
我发的贴子不全,请大家结合2楼一起看.

全文是:
情况是这样的:
要修改数据库里的记录,用以下语句:

Table1.Edit;
Table1.fieldbyname('1').asstring:=Edit1.Text;
Table1.fieldbyname('2').asdatetime:=Unit1.GetCurrentTimeFromServer;
Table1.Post;
报错
EDBEngineError:Capability not supported.....

问题是,如果对该表插入记录,即
Table1.append
...
...
则完全正确,可以进行。

而且,另一张设定一模一样的表Table2,指向数据库中的表不同,使用同样的方法修改记录,不回出错。

请问这究竟是哪里的问题,想在Table1中修改条目应该如何进行?

fromoon 2004-04-29
  • 打赏
  • 举报
回复
类型是匹配的,添加新纪录的时候没有错啊。

而且同样的方法,修改别的表的时候也没错,也不是方法的问题吧。
zhlwyy 2004-04-29
  • 打赏
  • 举报
回复
检查一下你定义的类型是否匹配!
Table1.Edit;
Table1.fieldbyname('1').asstring:=strtoint(Edit1.Text);
Table1.fieldbyname('2').asdatetime:=unit1.GetCurrentTimeFromServer;
Table1.Post;
fromoon 2004-04-29
  • 打赏
  • 举报
回复
Table1.fieldbyname('1').asstring:=Edit1.Text;
Table1.fieldbyname('2').asdatetime:=Unit1.GetCurrentTimeFromServer;
Table1.Post;
报错
EDBEngineError:Capability not supported.....

问题是,如果对该表插入记录,即
Table1.append
...
...
则完全正确,可以进行。

而且,另一张设定一模一样的表Table2,指向数据库中的表不同,使用同样的方法修改记录,不回出错。

请问这究竟是哪里的问题,想在Table1中修改条目应该如何进行?
zblaoshu1979 2004-04-29
  • 打赏
  • 举报
回复

Table1.Edit;
Table1.fieldbyname('1').value:=StrToInt(Edit1.Text);
Table1.fieldbyname('2').value:=unit1.GetCurrentTimeFromServer;
Table1.Post;

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧