![]() |
Datenbank: Paradox • Zugriff über: SQL
SQL-String Länge
Hallo alle...
ich habe mal eine kleine Frage... :-D ich weiß, das die maximale Stringlänge 256 Zeichen beträgt. :roll: wenn ich mit UNION 2 SQL-Strings 'verbinde' gilt dann die maximale Länge für jede einzelne Teilanweisung oder auch für den gesamten String ? :gruebel: Danke für Euer Interesse... :hi: |
Re: SQL-String Länge
Hallo haentschman,
ich weiß nicht genau, ob ich dich richtig verstanden habe. Wenn du einen längeren String aufteilen willst, wäre ein
Delphi-Quellcode:
das was du suchst.
query1.sql.add('');
Damit kannst du dir längere SQL Strings aneinander "adden". |
Re: SQL-String Länge
Hallo Jürgen...
ich hatte bei mir im Projekt schon einmal das D5 gemeckert hat, das der SQL String größer als 256 Zeichen wäre. :( ich habe hier im Forum gelesen, das eigentlich mehr Zeiche möglich wären. Ich vermute, daß es mit localSQL zusammenhängt. Mein Problem demnächst wird sein, daß ich definitiv einen Größeren String basteln muß weil ich mit UNION mehrere Teilanweisungen zu einer Ergebnismenge zusammensetzen muß. Wie das funktioniert ist mir klar. wenn jeder Teilstring mit 256 Zeichen möglich wäre hätte ich keine Sorgen. Gilt der gesamte String incl. UNION habe ich ein Problem mit der Stringlänge und ich muß mir etwas anderes einfallen lassen. :roll: Danke für die schnelle Reaktion... :hi: [edit] :idea: kann es sein, daß die 256 Zeichen für die SQL.Add Anweisung gelten aber mit der gesamten SQL-Länge nichts zu tun haben? Dann wäre es ja easy.... [/edit] |
Re: SQL-String Länge
Ich könnte jetzt ja ketzerisch zu einer richtigen Datenbank raten ...
|
Re: SQL-String Länge
Ich schätze eher, es geht hier um die maximale Stringlänge eines Paradox Strings (Varchar), und die kann schon auf 255 Zeichen begrenzt sein, wenn ich mich recht erinnere.
Aber was hat das mit einem UNION im SQL Befehl zu tun, denn ein Union liefert dir höchstens weitere Zeilen in einem Resultset. Ledlich die Spaltenbreite ist auf 255 begrenzt. Es können aber durchaus 100000 Zeilen mit 200 Zeichen zurückgeliefert werden. Wenn dir 255 Zeichen nicht ausreichen, dann gibts auch noch andere SQL Datentypen (cf. Text, Blob...) |
Re: SQL-String Länge
Er meinte wohl die Länge des Statements
|
Re: SQL-String Länge
...ich weiß, ich weiß.... :(
aller Anfang ist schwer. Wenn dieses Projekt fertig ist, setze ich es neu auf MySQL auf. 2 Versionen...eine für kleine Datenmengen ( kleine Firmen ) und eine für größere. Ich programmiere in Delphi erst seit ca. 1,5 Jahren mehr als Hobby weil ich selbstständiger Handwerker bin und ja noch meine Brötchen verdienen muß. Was ich in dieser Zeit mit learnig by doing erreicht habe ist schon nicht schlecht... Wenn ich mit dem Projekt fertig bin stelle ich es sowieso bei Euch der Inquisition... :-D Aber trotzdem Danke... :hi: |
Re: SQL-String Länge
Warum dann mit den Eigenheiten und Beschränkungen eines veralteten und seit Jahren nicht mehr weiterentwickelten System rumärgern. Ich würde gleich was moderneres nehmen und auf ein durchgehenden System setzten. Lokal ne embedded-Lösung und für größere Bestände nen richtigen Server.
Hier würde sich FireBird embedded/FireBird, MySQL embedded/MySQL, MSSQl compact/MSSQl express/ MSSQl anbieten. Wobei ich nicht unbeding MySQL nehmen würde. |
Re: SQL-String Länge
Danke an alle... :-D
Ich arbeite zur Zeit mit Paradox und Query. In einer Query.SQL.Add(String) war bei 256 Zeichen Schluß. Die Frage war, ob der String einer einzelnen SQL.Add Anweisung nur 256 Zeichen betragen, die Gesamtlänge des SQL Strings nach mehreren SQL.Add auch größer sein kann oder es eine Beschränkung von localSQL ist. :roll: |
Re: SQL-String Länge
Ja was ist denn jetzt dein Problem, denn gelöst ist hier ja noch nix.
Hast due Probleme mit den Strings in Paradox oder in Delphi? Und bevor du auf MySQL setzt, lies dir mal die vielen Thread "Welches Datenbanksystem ist für mich geeignet" hier durch. Es gibt daneben auch noch etliche, imho bessere, DBMS als MySQL. |
Re: SQL-String Länge
...ich weiß es ist schon spät...
wie kann ich es anders erklären ? :gruebel: Query.SQL.Add('select.....270 Zeichen.....') ---> Fehler: maximale Stringlänge 256 Zeichen gilt das nur für diese Anweisung oder für die gesamte SQL-Anweisung die möglich wäre ? |
Re: SQL-String Länge
Das scheint wohl wirklich eine Begrenzung von Paradox sein, denn TStringListen (und nichts anderes ist die SQL Property von TQuery), macht dir diesbezüglich keine Einschränkungen.
|
Re: SQL-String Länge
Danke...macht mir aber keinen Mut... :(
da muß ich mir etwas anderes einfallen lassen... Gute Nacht... :hi: |
Re: SQL-String Länge
Wechsle die Datenbank! Das hilft bei Paradox (und MSACCESS) immer :wink:
|
Re: SQL-String Länge
Zitat:
Und ehe ichs vergesse : wechsle die DB :mrgreen: , bevor das ganze Programm neu programmiert werden muss. Wenn das der Hersteller schon seit 5 Jahren sagt, dann wirds langsam Zeit. Ist aber ohne Gewähr !! Eventuell kann Paradox tatsächlich nur strings < 255 verarbeiten. :shock: |
Re: SQL-String Länge
Guten Morgen.
Nach meinem Verständnis geht es hier um die Beschränkung von String Literalen in Delphi auf 255 (nicht 256) Zeichen, die leicht durch Verkettungen überwunden werden kann. Der Editor meiner IDE hat ein Zeilenlimit von 1.024 Zeichen (nicht 270). LocalSQL hat ein Limit von 32.768 Zeichen pro SQL-Statement (Length(SQL.Text), kann auch 65K sein). Grüße vom marabu |
Re: SQL-String Länge
Guten Morgen an alle..
da habe ich ja noch mal Glück gehabt... :-D zum Thema Datenbank wechseln... wer fliegen will muß erst mal laufen lernen ! Danke... :hi: |
Re: SQL-String Länge
das Problem ist nur das die manche Techniken von paradox auf einen Holzweg führen. Am besten gleich ne andere nehmen!
|
Re: SQL-String Länge
nun ja...
ich habe mich schon mit MySQL beschäftigt. MySQLServer schon probiert...Ist auch eigentlich nicht schwer mit DirectSQL bzw. mit den CLab Komponenten (wenn man wirklich proffessionell/kommerziell arbeitet ). Was mich an MySQL stört ist diese undurchsichtige Lizenzgeschichte welche hier schon oft diskutiert wurde. in Firebird habe ich mich gestern noch kurz hineingelesen.... :gruebel: Was, wo, wie ...noch keinen richtigen Durchblick. ich denke...alles zu seiner Zeit. Danke für die Motivation. :-D |
Re: SQL-String Länge
Grundsätzlich unterscheiden sich der Zugriff auf die Datenbanken nicht so sehr, da die VCL eine einheitliche Zugriffsmethode mit TDataSet & Co. bietet. Wenn du mit MySQL zurecht kommst, kommst du auch mit FireBird zurecht. Hier im Forum gibt es auch einige die mit dem Feuervogel umgehen konnen.
Was meinst du mit was, wo, wie? ![]() Kompos: IBX, IBO, IBDaC (von CoreLabs; sehr empfehlenswert), Zeos, MDO, ... |
Re: SQL-String Länge
mit was, wo, wie
meinte ich zum Beispiel: - Classic oder Super ? - wo gehört der Server hin ? Client/ohne Client ? - eigentlich erst einmal allgemeines Verständnis. - Serververbindung über IP ? (sprich über Web via vpn) - müssen zum Programm DLL´s mitgeliefert werden ? - kann der Server mitgeliefert werden ? ...und noch jede Menge mehr... lesen, lesen, lesen... :???: |
Re: SQL-String Länge
Zitat:
Zitat:
Zitat:
- eigentlich erst einmal allgemeines Verständnis. Zitat:
Zitat:
Zitat:
|
Re: SQL-String Länge
Danke für die Infos... :-D
ich muß jetzt mal weg...Termine :( bis bald... :hi: |
Re: SQL-String Länge
Hallo,
eine einfache Suche nach "bde limit" hätte es auch getan ... ![]() Grenze des SQL-Statements 4k(RequestLive=True) oder 64k (False) Heiko |
Re: SQL-String Länge
Zitat:
Aber egal, die Frage an sich ist ja geklärt. |
Re: SQL-String Länge
Hallo alle...
um das hier abzuschließen.... ich habe beschlossen das Projekt erst einmal kpl. fertig zu machen....damit ich überhaupt mal was fertig habe. beim nächsten wird alles anders... :-D |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:46 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