关于用TTable动态建立数据库的问题,急!!!(100分)

  • 主题发起人 主题发起人 ddt
  • 开始时间 开始时间
D

ddt

Unregistered / Unconfirmed
GUEST, unregistred user!
这段程序按我的要求建立了e:/abcde.dbf,但用VFP打开该数据库却得到Enable Table,为什么呢?
该如何动态生成下确的数据库

void __fastcall TForm1::Button8Click(TObject *Sender)
{
TTable *TableOutput;

TableOutput= new TTable(NULL);
//TableOutput->DatabaseName =ExtractFileDir(DBFOutput);
TableOutput->TableName ="e://abcde.dbf";
//add fields
TableOutput->FieldDefs->Add("aaa",ftString,0,true);
TableOutput->FieldDefs->Add("bbb",ftString,0,true);
TableOutput->FieldDefs->Add("ccc",ftString,0,true);
TableOutput->FieldDefs->Add("ddd",ftString,0,true);
TableOutput->FieldDefs->Add("eee",ftString,0,true);
TableOutput->FieldDefs->Add("fff",ftString,0,true);

TableOutput->CreateTable ();
TableOutput->Active =true;
TableOutput->AppendRecord (ARRAYOFCONST(("hhh","Crob","Crob","Crob","Crob","end")));
TableOutput->Edit();
TableOutput->Post ();
}
 
TTable tablename;
tablename:=TTable.Create...
试试
 
程序是没问题,问题是用TTable创建出来的是Visual dBASE7的表,而用SQL Explorer看VFP5的表是FOX26的,
确实不认:( 。我还创建了一个ODBC的FoxPro别名,将TTable的DatabaseName指向它,结果连表都Create不出来!

你一定要用VFP吗?(把FoxPro扔了吧,那玩意儿简直是误人子弟!)
 
你的程序沒錯,不信你把臨時表保存,用Delphi的Database Desktop打開,如能打開就說明沒有
錯,只是Delphi 創建的.DBF是Visule dbase7表類型,且索引文件後綴為.MDX而不是.CDX,故用
VFP或Foxpro2.x均不能打開,且提示為'Not a database file'.
 
多人接受答案了。
 
后退
顶部