AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi PL/SQL: parsen von variablen & typen
Thema durchsuchen
Ansicht
Themen-Optionen

PL/SQL: parsen von variablen & typen

Ein Thema von Robert_G · begonnen am 18. Nov 2003 · letzter Beitrag vom 26. Nov 2003
Antwort Antwort
Robert_G
(Gast)

n/a Beiträge
 
#1

PL/SQL: parsen von variablen & typen

  Alt 18. Nov 2003, 11:45
Hi,
ich würde gerne sämtliche Variablen und Typen in einen Stück PL/SQL code erkennen und in getrennte arrays schreiben.
Einen für die variablen - mit typ und einen für die typen.
Bei einem Record wäre es nett, wenn ich auch noch eine Liste der Felder bekommen könnte.
Das ganze sieht ungefähr so aus:
SQL-Code:
type date_rec is RECORD
 (DT date,
  DTc Varchar2(8));

act_VDat DATE_REC;

TYPE ae_tab_type IS TABLE OF bn_08.AE_update%ROWTYPE
  INDEX BY BINARY_INTEGER;
ae_tab AE_TAB_TYPE;
BlaBla NUMBER(2);
Vielleicht hat einer von euch sowas schon mal gemacht.

Zweck: Ich möchte einen query-builder schreiben in dem man auch die verfügbaren Variablen aufgelistet bekommt und ACCESS-like mit den Spalten einer Tabelle verknüpfen kann.
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#2

Re: PL/SQL: parsen von variablen & typen

  Alt 18. Nov 2003, 12:02
vergessen als offen frage zu speichern
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#3

Re: PL/SQL: parsen von variablen & typen

  Alt 18. Nov 2003, 20:16
Hallo GeorgeWNewbie,

so etwas nennt man Parsen, einen String in seine Bestandteile zu zerlegen. Was du dazu benötigst, ist eine formale Sprache, die alle syntaktisch korrekten Strings erzeugen kann. Für Records könnte eine Regel wie folgt aussehen:

typdekla = type identifier record felddef
felddef = (felder);
felder = identifier fieldtype, felder

usw.

dann kannst du einen String wortweise lesen und die zugehörige Regel finden. So findest du dann alle identifier. Tja, um so komplizierter die Regeln, desto größer ist der Aufwand.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#4

Re: PL/SQL: parsen von variablen & typen

  Alt 18. Nov 2003, 20:43
Gibt es in Delphi dafür irgendwelche Funktionen oder muss ich zu einer kontextfreien (oder wie das heißt ) Grammatik greifen?
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#5

Re: PL/SQL: parsen von variablen & typen

  Alt 18. Nov 2003, 21:13
Hallo GeorgeWNewbie,

nein, dazu gibt es keine Befehle in Delphi. Du musst tatsächlich die Syntax selbst in einem Regelsystem beschreiben. Je nach Anforderung könnte es eine abgespeckte Syntax sein. Häufig ist in der Hilfe deiner Datenbank die Syntax in diesen Regeln beschrieben. Aber nicht erschrecken! Der Umfang ist sehr groß. Es kann aber durchaus sein, dass es da bereits Komponenten oder Tools gibt. Ich selbst kenne jedoch keine.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#6

Re: PL/SQL: parsen von variablen & typen

  Alt 18. Nov 2003, 21:27
Thx Spock,
Ich habe dieses Package gefunden und gleich installiert.
Es liefert eine Komponente in der man BNF-Grammatiken erstellen kann.
Man hat sogar zur Laufzeit Zugriff auf den Editor und der hat auch noch einen Debugger!!!

Ach so - das genialste es ist freeware und hat eine ausführlliche Hilfe dabei.

So, jetzt muss ich mich erstmal mit Terminals & Co. auseinandersetzen.
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#7

Re: PL/SQL: parsen von variablen & typen

  Alt 26. Nov 2003, 20:42
Ich komme in den nächsten 2 Wochen nicht mehr dazu, an diesem Projekt zu schreiben.
Deshalb entferne ich mal das flag "offene Frage".

Wenn ich es fertig habe werde ich aber meine Lösung hier posten.
  Mit Zitat antworten Zitat
Antwort Antwort


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:27 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