我已经在form.creat事件里面打开了ttable控件,并设置了table1.edit了,后面只要我写数据怎么还要我table1.edit?

zzyyxxjc 2004-09-25 09:01:17
我已经在form.creat事件里面打开了ttable控件,并设置了table1.edit了,后面只要我向数据库中写数据每次都说我操作一个锁定的不可编辑的数据集,我在前面一加table1.edit就可以了,为了程序运行我都加了无数个table1.edit了!这是为什么?
...全文
140 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzyyxxjc 2004-11-24
  • 打赏
  • 举报
回复
我觉得 man8888(北京男人) 说得有道理,切中要点!给分了!
hj007 2004-09-28
  • 打赏
  • 举报
回复
POST后就应该可以了.
但是没有必须要窗体的Create后就Edit.除非你知道打开窗体后就要修改数据.
.要是这样还不可以可能是你的Table或Query控件出现问题可以看看是否连接出现问题
Changefish 2004-09-28
  • 打赏
  • 举报
回复
man8888(北京男人) 的答案很详细了
todouwang 2004-09-28
  • 打赏
  • 举报
回复
...
ttoth12 2004-09-28
  • 打赏
  • 举报
回复
在你的button的click事件里面撰写edit,把数据集变成edit状态!!
likefg 2004-09-28
  • 打赏
  • 举报
回复
你應該明白,在table厘只要其當前記錄發生移動,馬上更新所有的編輯操作,如果你在formcreate裡面寫edit,你不知在這個過程中是否當前記錄發生移動,所以可能出現提示不在編輯狀態
Tensionli 2004-09-28
  • 打赏
  • 举报
回复
仅在你需要编辑时才edit
welllove88 2004-09-27
  • 打赏
  • 举报
回复
晕~~ 你设置TABLE的EDIT属性是可否编辑吧
不过你在程序里要这样写才能编辑数据的
table1.edit;
table1.fieldValue['字段名']=值;
..
..
table1.post;
table1.edit是编辑当前记录集中游标所指定的记录 而POST是把数据更新回数据库 和你设置的TABLEL的EDIT属性没任何关系的!
man8888 2004-09-27
  • 打赏
  • 举报
回复
realhero,你说得对,table每次post完后edit、insert、Append状态全部消失的,所以每次post之前必须写edit、insert或者Append,否则出错。还有,FormCreate事件执行时一般不要调用如下行为:
1、数据库操作。
2、可视化组件的Visible、width、height、Enabled等属性更改行为,80%都出错,因为窗体还没创建,设置其子属性的可见性当然谈不上了。

建议把这些代码写在FormShow事件里,如果这些代码失败则执行
Halt指令退出程序,而不是调用Close方法。
cd_fsy2000 2004-09-27
  • 打赏
  • 举报
回复
如果用的地方很多的话,建议楼主创建一个公共的table然后写一个公用函数就行了
zzyyxxjc 2004-09-27
  • 打赏
  • 举报
回复
难道table每次post完后都把table.edit给关了?
zzyyxxjc 2004-09-27
  • 打赏
  • 举报
回复
那如果我在button.click里写了table1.edit后,在其他的事件里要是再用到table['内容']:='xxx'时还得在前面加上table.edit,每用一次就要加一次!这是为何?
yu98041154 2004-09-26
  • 打赏
  • 举报
回复
table编辑后,会自己post
你灾Create中的edit相当于没写
zdq801104 2004-09-26
  • 打赏
  • 举报
回复
你为什么要这样写?你在BUTTON里面table1.edit不就可以了嘛
whitetiger8 2004-09-26
  • 打赏
  • 举报
回复
好像不是这么使用的。。。
sixgj 2004-09-26
  • 打赏
  • 举报
回复
没明白意思?
软件钢琴师 2004-09-26
  • 打赏
  • 举报
回复
请不要在form.creat里放操作数据的代码
再放一个button按钮,在它的事件里写你添加数据的代码就没问题了
chengchong1979 2004-09-26
  • 打赏
  • 举报
回复
Create中的edit相当于没写
wg007 2004-09-25
  • 打赏
  • 举报
回复
请不要在Form.Crate事件中作数据操作.
table编辑后,会自己post.
所以每次编辑前,都要用table1.edit;

2,507

社区成员

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

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