devxlogo

Creating a table using code

Creating a table using code

Question:
Hi,Each time l try to create a table using code-not the database explorer, i get an error message:access violation at address 0042f540 read of address 7466654c.Whats the problem, how can l create a table using delphi code only?

Answer:
The only reason I can think of that explains this is that you’re not instantiating the TTable variable. For instance,

MyTable.CreateTable;

alone will not work. You have to set up the database, tablename, and tabletype, and fielddefs properties. Here’s a code snippet that I know works:

var  tbl, sTbl : TTable;  typStr : String;  ch : Char;begin  {Create and set up the Destination Table}  tbl := TTable.Create(Application);  with tbl do begin    SessionName := ThrSes.SessionName;    DatabaseName := ExtractFilePath(TblName);    TableName := ExtractFileName(TblName);    TableType := ttParadox;    FieldDefs.Add('Field1', ftString, 10, False);    FieldDefs.Add('Field2', ftString, 25, False);    CreateTable;    Free;  end;

This is something that I pulled out from one of my own programs, and I know that it works – though I’ve edited it a bit for simplicity. You can use this code as a template.

devx-admin

Share the Post: