![]() |
SQL script zu groß für TStrings. Alternative?
Hallo Zusammen,
mein DDL SQL Script für die Neuanlage ist über 186.000 Zeilen lang. Bisher konnte ich über IBExpert/ExtractMetaData(nur Struktur ohne Daten) das Script in ein TJvMultiStringhHolderCollectionItem schreiben. Dieses Script und ein paar weitere items um default Werte zu setzen wird der Reihe nach in ein TFDScript geladen und ausgeführt. Hat bisher funktioniert. Jetzt ist das Script zu groß so dass ich es nicht mehr über die Zwischenablage in ein Item kopieren kann. Der Text wird abgeschnitten. Wenn ich es händisch aufteile in mehrere Items dann funktioniert es. Allerdings steigt die Gefahr dass ich beim Ausschneiden etwas falsch mache. Kennt jemand eine andere Komponente die mehrere String aufnehmen kann und dessen Limitierung größer ist als bei TStrings? Gruß Kostas |
AW: SQL script zu groß für TStrings. Alternative?
Auf Strg+V und/oder Shift+Einfg und/oder das Kontextmenü und/oder WM_COPY regaieren, Clipboard.AsText und dann im Code aufteilen und Mehreren Items zuweisen.
|
AW: SQL script zu groß für TStrings. Alternative?
Sorry für das Missverständnis.
Aktuell habe ich den String des SQL-Scripts zur Entwurfszeit über die Zwischenablage in das TStrings Items hinzugefügt. Ich habe jetzt das Script über eine Resource in die .exe compiliert. Das funktionierte einwandfrei. Ich darf nur nicht vergessen jedes mal beim Update des Scripts die Resourcendatei über brcc32.exe erneut zu erzeugen. Vermutlich ist das eh die bessere Methode dafür. Gruß Kostas |
AW: SQL script zu groß für TStrings. Alternative?
Über den Resourcen-Editor (Projekt > Ressourcen und Bilder)
eine Text-Datei als RCCATA einbinden oder die *.rc in der ProjektDatei (DPR/DPK) einbinden (Text/RessourceStrings in direkt RC oder als FileLink)
Delphi-Quellcode:
bzw.
{$R xyz.res xyz.rc}
Delphi-Quellcode:
(optional als
{$RESOURCE xyz.res xyz.rc}
Delphi-Quellcode:
, auch inkl. Verzeichnis)
'xyz.res'
Hier kompiliert der Compiler die RES (bzw. das Projekt/DPROJ führt den BRCC32 automatisch aus) Funktioniert aber nur im Projekt und nicht in einer PAS ... dort wird leider, ohne Fehlermeldung, der zweite Parameter ignoriert. |
AW: SQL script zu groß für TStrings. Alternative?
Ich habe auch ein paar Projekte die ihre eigene DB erstellen. Dafür gibt ein Verzeichnis in dem alle Scripte liegen. Wenn Delphi die Exe neu erstellt wird via Buildereignis eine Unit aktualisiert die komprimiert und verschlüsselt die ganzen Scripte als Konstanten enthält.
Zur Laufzeit kümmert sich dann eine Komponente um den Zugriff auf die Daten. Genauso könnte man die Sachen auch huckepack an die Exe anhängen. Damit haben aber immer malwieder einige Vierenscanner ein Problem. |
AW: SQL script zu groß für TStrings. Alternative?
Zitat:
oder als PE-Section |
AW: SQL script zu groß für TStrings. Alternative?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:37 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