SQL-Syntax-Highlighting für C++builder und Delphi
-
Hi,
hat von Euch einer ne Ahnung, wie man C--Builder oder Delphi ein richtiges Syntax-Highlighting für SQL-Skripte beibringen kann?
Ich würde gerne komplexere SQL-Anweisungen im Editor vom C++Builder erstellen und dabei gerne ein wenig Syntax-Highlighting benutzen, ist einfach übersichtlicher und fehlersicherer. Für nen TRichEdit hab ich mir da was zusammengestrickt, aber für größere Sachen ists nicht leistungsfähig genug. Würde da gerne alle sonstigen Editiermöglichkeiten des Borland-Editors (z.B. Spaltenblöcke) benutzen.
Ich meine jetzt nicht, daß die paar reservierten Worte fett geschrieben werden, dass kann ja Borland auch. Aber das auch die Standardfunktionen wie Sum(), Max(),... gekennzeichnet werden, und daß mit "" oder ' eingegrenzte Zeichenketten erkannt werden und nicht erfolgter oder falscher Abschluß derselben angezeigt wird oder eben auch Verwechslungen zwischen 1,2 und 1.2...Wäre schön wenn einer einen tipp hat, wos sowas an land zu ziehen gibt oder wie man den vorhandenen editor um derartiges erweitern kann. Im voraus schon immer vielen Dank.
Gruß Mümmel
-
Hallo
In der FAQ gibt es einen Artikel zum Thema SH im Richedit. Da du nicht angegeben hast ob du diesen schon kennst verweise ich dich mal darauf.
Der Editor des Builders selber kann aber nicht SQL interpretieren. Eventuell findest du im Netz eine entsprechende Fremdkomponente.
bis bald
akari
-
Hi akari,
danke, aber die Variante mit RichEdit hab ich auch gefunden, geht aber auch nicht über das hinaus, was ich selber da schon gemacht habe. Es bleibt eben ein RichEdit.
Worauf es mir gerade ankommt ist die Übersichtlichkeit und bedingt Fehleranzeige eines richtigen SH und gleichzeitig die vollen Editiermöglichkeiten des Builder-Editors. Ich dachte, daß da vielleicht jemand irgendwo eine Schnittstelle kennt, wo man ein "Färbetool" an Borland andocken kann.Gruß Mümmel
-
Warum erstellst Du das SQL nicht in einem DB-Admintool, welches sich mit der DB verbinden und das Statement parsen lassen kann? Ganz zu schweigen vom Objekt-Explorer oder dem Explain-Statement?
-
Hi,
ganz einfach: erstens hab ich da nichts geeignetes, und zweitens sollens keine kompletten SQL-Befehle werden, sondern "Futter" für ein anderes Tool, das dann aus Spaltennamen, Ausdrücken und Where-Bedingungen selbst eine gültige SQL-Anweisung zusammenbastelt.
Ich muß also in einer Textdatei die ganzen Anweisungen zusammentackern und dann Stück für Stück in die Datenbankfelder von dem Tool reinkopieren. Im Endeffekt soll das dann automatisiert Access-Datenbanktabellen auswerten und die Ergebnisse in vorbereitete Excel-Tabellen reinschreiben.
Da es möglicherweise um tausende von Fragmenten geht, wäre mir da en wenig Entgegenkommen meiner gewohnten Arbeitsumgebung ganz sympathisch gewesen.Gruß Mümmel
-
Hallo
Das wird wohl so nicht möglich sein. Wie soll denn der Builder-Parser denn zwischen normalern Stringliteralen im Code und SQL-Fragmenten unterscheiden?
bis bald
akari
-
Hi akari,
er soll ja gar nicht zwischen normalem Code und SQL unterscheiden. Ich will ja in einer (SQL-)Datei erst mal nur die SQL-Schnipsel zusamenstellen. Das soll dann anschließend in eine Access-Datenbank in entsprechende String- bzw. Memofelder kopiert werden und daraus dann abgearbeitet werden. Mir würde ja schon eine Schnittstelle gefallen, wo man den Builder anbohren kann. Aber Du hast wahrscheinlich recht und es wird wohl nicht gehen. Der andere Weg, RichEdit so weit aufzubohren daß es den Builder-Editor ersetzt ist aber wohl genau so wenig gangbar (zumindest nicht mit vertretbarem Aufwand).
Gruß Mümmel
-
muemmel schrieb:
Mir würde ja schon eine Schnittstelle gefallen, wo man den Builder anbohren kann.
-
muemmel schrieb:
Ich will ja in einer (SQL-)Datei erst mal nur die SQL-Schnipsel zusamenstellen.
Dann nimm doch einfach einen Editor dafür, der SQL highlighten kann!?