![]() |
Datenbank: SAP DB • Version: 7.4 • Zugriff über: ODBC ADO
Probleme bei Feldnamen auslesen mit GetFieldNames()
Hallo,
ich versuche grade die Feldnamen aus einer Tabelle, die ich mit einer List Box ausgewählt habe, zu extrahieren. Mit ADO GetFieldNames(); geht das auch recht gut, wobei ich vorher mit select * from ' +tbl+' where 1=0 mir einen 'leeren' Datensatz ins DataSet schreibe. Wie gesagt, das funktiniert prinzipiell, es gibt aber DB Konstellationen bei der es nicht geht. Der Tabellenname heisst z.B. XYZ. Das Select statement muss aber bei dieser IDM DB2 (ich denke es hängt nicht mit der DB zusammen, sondern mit den Ideen unseres DB Administrator) dann select * from pp.XYZ where 1=0' heissen. Dieser Prefix "pp" ist mir aber nicht immer bekannt. Gibt es eine andere Möglichkeit die Feldnamen auszulesen, ohne dieses Select abzusetzen?
Delphi-Quellcode:
procedure TForm2.ListFieldNames(tbl:string);
begin ADODataSetGetFieldnames.active:=false; ADODataSetGetFieldnames.CommandText:='select * from ' +tbl+' where 1=0'; WriteToMem(ADODataSetGetFieldnames.CommandText,Mem_Info); ADODataSetGetFieldnames.active:=true; ADODataSetGetFieldnames.GetFieldNames(Lst_Fieldnames.Items); SetHorizontalScrollBar(lst_Fieldnames); |
Re: Probleme bei Feldnamen auslesen mit GetFieldNames()
Hallo,
warum verwendest du nicht die entsprechenden Methoden der ADOConnection und verzichtest ganz auf eine Selektion? Grüße vom marabu |
Re: Probleme bei Feldnamen auslesen mit GetFieldNames()
Zitat:
Um zu testen, ob das überhaupt zum Erfolg führen kann, kannst du mein Programm ![]() In diesem Programm verwende ich ADOX zum Auslesen der Feldnamen. |
Re: Probleme bei Feldnamen auslesen mit GetFieldNames()
vielen Dank schonmal für die Antwort ...
Montag gehts weiter .... Schoenes Wochenende :o |
Re: Probleme bei Feldnamen auslesen mit GetFieldNames()
Hallo Marabu,
ja, du hast Recht. Vielen Dank. Mit ADOConnection getfieldnames gehts besser. Jetzt möchte ich noch beim Doppelclick auf den Tabellenname ein select * from ... absetzen. Hier laufe ich wieder in das selbe Prblem. Der Tabellenname heisst z.B. XYZ. Das Select statement muss aber bei dieser IDM DB2 (ich denke es hängt nicht mit der DB zusammen, sondern mit den Ideen unseres DB Administrator) dann select * from pp.XY Dieser Prefix "pp" ist mir aber nicht zwangsläufig bekannt. Weiss jemand wie man diesen Prefix pp auslesen kann? :P |
Re: Probleme bei Feldnamen auslesen mit GetFieldNames()
ich öffnen einen neuen threat. Die letzte Frage hat dann nix mehr mit dem Thema zu tun.
|
Re: Probleme bei Feldnamen auslesen mit GetFieldNames()
Zitat:
Code:
Im Beispiel oben wäre "pp" die Library und "XY" die Tabelle.
IBM Sprache | "normale" Sprache
============================== Library | Datenbank Datei | Tabelle logische Datei| View Wenn es keine gleichnamigen Tabellennamen in den Datenbanken gibt, kann man die Libraries im Datenbanktreiber eintragen und dafür in den Abfragen weglassen. Allerdings ist der (ODBC-)Treiber für DB2 sehr zickig und macht nicht immer das, was man erwartet. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz