在builder中一个初级数据库问题!! (50分)

  • 主题发起人 主题发起人 cdvoice415
  • 开始时间 开始时间
C

cdvoice415

Unregistered / Unconfirmed
GUEST, unregistred user!
新建一个记录的时候对字段进行赋值
想用fields editor中添加了所有的字段名后
通过字段的index对其赋值
就是不想每次用table1->fieldvalues["字段名"]=1;这样的方式
由于字段太多,想用循环方式赋值,
想通过类似Table1->Fields[0]=1;Table1->Fields[1]=2;之类的
方式赋值,但是编译不通过,用法错误,然后想尝试
table1->fields[0]->values=1,错误,原因是fields[0]这种写法好像不正确。
请教大侠们!!
还有一个很简单的问题,就是有什么函数或者方法可以获得table目前的记录数目总数的
thx
 
问题1已经解决
Table1->Fields->Fields[1]->AsInteger=1;
但是编译通过后运行出现错误:
Table2->Open();
Table2->Append();
Table2->FieldValues["Number"]=num;
Table2->Fields->Fields[1]->AsInteger=type;
for(int i=2;i<22;i++)
{
Table2->Fields->Fields->AsInteger=Trydata[i-2][0];
}
for(int i=22;i<42;i++)
{
Table2->Fields->Fields->AsInteger=Trydata[i-2][1];
}
Table2->Post();

//出现什么key voilation错误信息
不能实现新建一条记录并且赋值的功能
请指教!
 
table1.RecordCount可以取得记录总数, table1.FieldCount可以取得字段总数。
fields[0]这种写法没有错,可能错在字段类型不匹配,或者字段越界,又或是主键没有赋值或重复赋值。
 
Table1->Fields[0] 是一个TField对象,而1或2是integer数字,它们是不能相等的。
你可以通过
Table1.field[0].asinteger=1
获取记录数用table1.recordcount
[h1]
[red fontsize=12]
请给分
[/red]
[/h1]
 
编译通过后,现在一运行上面这段程序就出错,程序就死在那了
真实头疼
好像很简单的一个添加记录程序而已
 
关键字可能重复了.
 
多人接受答案了。
 
后退
顶部