Einzelnen Beitrag anzeigen

Benutzerbild von Legolas
Legolas

Registriert seit: 28. Sep 2003
Ort: Frankfurt am Main
72 Beiträge
 
Delphi 2005 Personal
 
#1

Probleme mit ADOX und D7 Personal

  Alt 11. Aug 2004, 14:19
Hallo alle zusammen,

wie mann links erkennen kann benutze ich D7 Personal. Nun wollte ich mal ein bisschen mit Access Datenbanken rumspielen und habe auch einige Infos in Bezug auf die Benutzung der ADOX_TLB's gefunden.

Folgenden Code habe ich bisher nur mal so zum Testen geschrieben. es wird auch eine Datenbank erstellt, das funktioniert auch sehr gut. Allerdings bei dem Versuch eine Tabelle innerhalb der Datenbank zu erstellen bringt mir Delphi schon beim compilieren folgenden Syntaxfehler:

Inkompatible Typen '_ColumnDisp und Column'

Die entsprechende Zeile ist von mir nochmal im unten stehenden Code markiert.

Hat jemand schon mal so was gemacht und kann mir da vielleicht weiterhelfen????

Delphi-Quellcode:
implementation

{$R *.dfm}

resourcestring
  cConnectionString='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=';

var
  aCatalog : _Catalog;
  aTable : _Table;
  aColumn : _Column;
  aIndex : _Index;
  sDBPath : String;
  sDS : String;
  vColName : OLEVariant;


procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Lines.Clear;
  sDBPath:=Edit1.Text;
  if FileExists(sDBPath) then
  begin
    DeleteFile(sDBPath);
    Memo1.Lines.Add(Format('Datenbankdatei %s gelöscht',[sDBPath]));
  end;
  aCatalog:=CoCatalog.Create;
  sDS:=aCatalog.Create(Format('%s%s',[cConnectionString, sDBPath]));
  Memo1.Lines.Add(sDS);
  Memo1.Lines.Add(Format('Datenbank %s wurde erstellt...',[sDBPath]));

  aTable:=CoTable.Create;
  aTable.ParentCatalog:=aCatalog;
  aTable.Name:='Kunden';
  Memo1.Lines.Add(Format('Tablle %s wurde erstellt...',[aTable.Name]));

  vColName:='KdnName';
  aTable.Columns.Append(vColName,adVarWChar,30);
  aColumn:=aTable.Columns.Item[vColName] as _ColumnDisp; <-- HIER DER FEHLER !!!!!!!!
  aColumn.Properties['Description'].Value:='Name des Kunden';
  Memo1.Lines.Add('Spalte 1 hinzugefügt...');
end;

end.
Ich wäre euch dankbar wenn Ihr mich auf den richtigen Weg bringen könntet.

Ach ja, da ich was lernen will kommen Fremdkomponenten leider nicht in Frage. Ich möchte es gerne selber programmieren.
Grüße Legolas

Wissen ist Macht.
Wir wissen nichts, macht nichts.
  Mit Zitat antworten Zitat