Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Spaltenbeschriftung von Access Spalten (https://www.delphipraxis.net/171514-spaltenbeschriftung-von-access-spalten.html)

Lee500 9. Nov 2012 17:48

Datenbank: Access • Version: 2002-2003 • Zugriff über: TADO

Spaltenbeschriftung von Access Spalten
 
Hallo Leute,

Ich bin gerade dabei mich ein wenig in die TADO Komponenten einzuarbeiten, weil ich nen haufen Datenmüll verarbeiten muss, den ich nicht mehr mit XML bewältigen möchte. Jetzt habe ich festgestellt, dass ich in Access zusätzlich zum Spaltennamen einer Tabelle auch eine Beschriftung angeben kann, die dann stattdessen angezeigt wird. Wenn ich aber jetzt die Daten in meinem Programm in einer TDBGrid anzeigen lasse, zeigt er den Spaltennamen oben an. Ich habe auch in der TADODataSet nichts gefunden, das mir die Beschriftung der Spalte ausgibt. Hat vielleicht jemand ne Idee wie ich an die Beschriftung komme?

Gruß Michael

Sir Rufo 9. Nov 2012 20:45

AW: Spaltenbeschriftung von Access Spalten
 
Geht mit ADOX (mal eben gegoogelt)
Delphi-Quellcode:
Uses ADOX:

var
    Column: _Column;
    fCatalog : Catalog;
begin
  fCatalog := CoCatalog.Create;
  fCatalog._Set_ActiveConnection(ADOConnection.ConnectionString);
  Column := fCatalog.Tables['tablename'].Columns['columnname'];
  strColProp := Column.Properties['Description'].Value;

Lee500 9. Nov 2012 21:38

AW: Spaltenbeschriftung von Access Spalten
 
Danke für die schnelle Antwort. Ganz so funktioniert es zwar nicht, da dann ein Typkonflikt beim setzen der Verbindung auftritt. Ich hab es jetzt so gelöst:

Delphi-Quellcode:
fCatalog := CoCatalog.Create;
  fCatalog.Set_ActiveConnection(connection.ConnectionObject);
  Column := fCatalog.Tables['tablename'].Columns['columname'];
  showmessage(Column.Properties['Description'].Value);
Allerdings wirft er mir jetzt die Beschreibung der Spalte aus und nicht die Beschriftung. Man kann einmal eine Beschriftung angeben, die auch in der Access Datenbank selbst angezeigt wird statt dem Namen. Und man kann eine Beschreibung dazu angeben, die ich jetzt zurück bekomme.

Ich habe auch schon 'Caption' oder 'Label' probiert, aber das wirft mir eine Exception aus. Bei google hab ich auch nichts wirklich hilfreiches gefunden.

Gruß Michael

Union 9. Nov 2012 22:05

AW: Spaltenbeschriftung von Access Spalten
 
Mit ADOX wird es nicht gehen, da dort nur das Datenmodell bekannt ist. Und die User-defined-property "Caption" gehört da leider nicht dazu. Du könntest das (veraltete) DAO einsetzen.

Bernhard Geyer 9. Nov 2012 23:06

AW: Spaltenbeschriftung von Access Spalten
 
Zitat:

Zitat von Sir Rufo (Beitrag 1190559)
Geht mit ADOX (mal eben gegoogelt)

Gibts das eigentlich mit den neuerer Acceess/JET-Versionen noch? MS wird ja Mittel bis Langfristig Access wie schon FoxPro begraben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:05 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz