AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Direct Oracle Access und DESCRIBE TABLE

Direct Oracle Access und DESCRIBE TABLE

Ein Thema von tburch · begonnen am 22. Okt 2004 · letzter Beitrag vom 22. Okt 2004
Antwort Antwort
tburch

Registriert seit: 11. Okt 2004
5 Beiträge
 
#1

Direct Oracle Access und DESCRIBE TABLE

  Alt 22. Okt 2004, 08:56
Erstmal ein "Gruezi" aus der Schweiz.

Ich verwende die DOA Komponenten 3.4.6.4 und möchte damit ein kleines Programm schreiben welches mir die Datenbank – Administration vereinfacht.

Oracle Version 8i.

Leider hänge ich schon früh beim ersten Problem fest.

Mit einem OracleDataSet und dem folgenden SQL frage ich alle Tabellen ab und fülle dies in ein DBGrid.

SELECT * FROM user_objects WHERE object_type = 'TABLE'

Soweit funktioniert alles noch wunderbar. Leider habe ich etwas höhere Ansprüche als nur alle Tabellen angezeigt zu haben. Jetzt möchte ich noch, wenn eine Tabelle ausgewählt wird die Attribute dieser Tabelle angezeigt werden.

Ich platziere wieder ein OracleDataSet in meinem Datenmodul und versuche es mit diesem SQL:

DESC Tabelle;

Leider gibt dies nur"ORA-00900: Ungültige SQL-Anweisung' zurück.

Das Problem ist für mich schwer nachvollziehbar da die Abfrage ansonsten funktioniert. (Wenn ich sie im TOAD eintippe, dann geht’s.)

Scheint so als würde OracleDataSet dieses SQL nicht unterstützt.

Wäre froh um Hilfe.

Mit freundlichen Grüssen

T.Burch
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.838 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

Re: Direct Oracle Access und DESCRIBE TABLE

  Alt 22. Okt 2004, 10:04
Zitat von tburch:
Ich platziere wieder ein OracleDataSet in meinem Datenmodul und versuche es mit diesem SQL:
DESC Tabelle;
Leider gibt dies nur"ORA-00900: Ungültige SQL-Anweisung' zurück.
Das Problem ist für mich schwer nachvollziehbar da die Abfrage ansonsten funktioniert. (Wenn ich sie im TOAD eintippe, dann geht’s.)

Scheint so als würde OracleDataSet dieses SQL nicht unterstützt.
Das liegt daran das DESC (DESCRIBE) kein SQL Befehl ist.

Wenn Du im TOAD DESC TableName eingibst, bekommst Du auch keine Antwort im Tabellenformat zurück, sondern ein extra Fester in dem Du die Felder, Index, ... sehen kannst.

Wenn Du die Infos via SQL bekommen möchtest, dann benutze die ALL_* Views (Owner = 'SYS')

select * from ALL_TAB_COLUMNS where OWNER = 'TESTand TABLE_NAME = 'TEST' Das klappt.
So kommt man auch an alle weiteren Infos ran
(Index, Rechte, ...)

Es gibt auch Systemtabellen in denen man den SQL-Text von Views, Trigger, StoredProcs, Package, ... entnehmen kann. (ALL_VIEWS, ALL_TRIGGERS, ...)

Eine Beschreibung der Tabellen findest Du im Handbuch von Oracle.

Es gibt noch ein paar Befehle, die kein SQL sind.
z.B. die SQL*PLUS Befehle -> z.B. @ und @@, /, &, COMP (COMPUTE), CON (CONNECT), ...
(SQL*PLUS ist das SQL Abfragetool von Oracle)

Ich hoffe diese Info hilft Dir.

ps: Herzlich willkommen bei der DP
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
tburch

Registriert seit: 11. Okt 2004
5 Beiträge
 
#3

Re: Danke

  Alt 22. Okt 2004, 10:37
Vielen Dank für Ihre Hilfe.

Es funktioniert jetzt wunderbar.
Werde mich aber trotzdem mal mit SQL bzw.
SQL * Plus beschäftigen.

Mit freundlichen Grüssen
T. Burch
  Mit Zitat antworten Zitat
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.838 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

Re: Danke

  Alt 22. Okt 2004, 10:42
Zitat von tburch:
Vielen Dank für Ihre Hilfe.
Gern geschehen.

In Foren wie diesem ist es üblich sich zu Dutsen.
Wir sind ja unter uns

Alle Informationen über alle Objekte sind im Oracle via SQL zu ermitteln.
Es gibt jede Menge System Tabellen.

Die Views SYS.ALL_* kann ich Dir ans Herz legen, fang da an zu schauen.
Es ist einfacher diese Views zu benutzen als die System Tabellen direkt.
(Quelltext der Views mal anschauen

Viel Spaß
Dr. MaBuSE
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:17 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