一个问题?我编的一个程序用到数据库为什么和APPEND方法和POST会出错。(100分)

  • 主题发起人 主题发起人 bwdxh
  • 开始时间 开始时间
B

bwdxh

Unregistered / Unconfirmed
GUEST, unregistred user!
我有个简单的问题就是。要在程序中自动加入数据库。
Table1.append;
Table1.fields[0].asstring:='1111';
.....
Table1.post;
就这么简单,为什么会出现关键字违规的提示。
 
如果我没记错,应该先将table1的Edit置为true
 
关键字违规,可能与你的数据有关,比如主键重复.更是否能Post无关.
 
先EDIT
然后if state<>dsbrowse then post
 
1、TABLE没有EDIT的属性,在DateSource中到有AutoEdit,本身就是TRUE;所以没有用。
2、数据库本身设置如下:
第一个字段QH是I类型的数据,第二个字段QH是日期型的,余八个字段是S型的,另外QH设为主关键字。
3、前面的数据已经加入可以在数据库中看到,可是一执行到POST就出错。
删去POST还是不行,再执行APPEND时还是出错。
4、最后一个方案也是不可行的。
也就是我在前APPEND前加入了TABLE。EDIT。
5、难道和数据库有关。我重搞了个试验,建了个另一个数据库只有二个S型字段,这个却有用。
有谁知道为什么?

 
Table1.append;
Table1.fieldbyname('QH').asinteger:=1;
.....
Table1.post;

试一下,可能主键重复了,或则字段类型长度等问题.
 
是主键重复了谢谢各位。[8D]
 
后退
顶部