Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi TQuery + SQL Statement Größe (https://www.delphipraxis.net/12386-tquery-sql-statement-groesse.html)

Stephan 26. Nov 2003 12:26


TQuery + SQL Statement Größe
 
Hi,

gibt es eine Möglichkeit auch größere SQL Querys auszuführen als mit den Standard-Einstellungen möglich sind? Ich will ganze RichEdit so in eine Datenbank eintragen, nur leider ist ab ca. 31000 Zeichen Schluß :(

r_kerber 26. Nov 2003 12:50

Re: TQuery + SQL Statement Größe
 
Hallo Stephan,

die Begrenzung auf 31000 Zeichen hat nichts mit der TQuery zu tun. Hier schlägt die Datenbank gnadenlos zu.

Stephan 26. Nov 2003 13:10

Re: TQuery + SQL Statement Größe
 
Hi,

gibts eine Möglichkeit die Grenze hochzuschrauben? Ich verwende Paradox + BDE.

r_kerber 26. Nov 2003 17:46

Re: TQuery + SQL Statement Größe
 
Hallo Stephan,

mir ist nichts dergleichen bekannt. Selbst bei der ganz aktuellen Informix-Version auf UNIX gilt diese Beschränkung. :cry:

Robert_G 26. Nov 2003 20:35

Re: TQuery + SQL Statement Größe
 
Ich verwende zum Speichern von Code in der Datenbank varchar2(2000) Felder (string mit 2000 Zeichen), da dieser Typ ziemlich schnell aus der DB abgefragt werden kann.
Um Code von mehr als 2000 Zeichen darin zu speichern braucht man nur eine weitere Spalte mit einer sequence anzulegen.
Du speicherst dann einfach nacheinader deine code-schnipsel als einzelne Einträge und kannst sie dann sortiert nach der sequence-spalte wieder abfragen und in dein RichEdit schreiben.

Hoffe es hilft dir.
Oder hat deine Abfrage eine Länge von über 31000 Zeichen ?!? :gruebel:

Bernd Ua 26. Nov 2003 21:57

Re: TQuery + SQL Statement Größe
 
Hi Stefan,
hat es einen bestimmten Grund, den kompletten Inhalt in SQL zu packen ?
Verwende doch eine parametrisierte Query draus und schieb den Text in den Parameter.

@GeorgeWNewbie
Und das verteilen von Textfragmenten auf mehrere Datensätze und wieder zusammen suchen
soll schneller sein als ein einzelnes Blobfeld mit dem ganzen Text ?
IMHO, dürfte diese technik den "schnellen" Feldzugriff dann wieder neutralisieren.


Grüsse
Bernd

Robert_G 26. Nov 2003 23:24

Re: TQuery + SQL Statement Größe
 
Bernd Punkt an dich :zwinker:

Ich hatte bisher nicht die Gelegenheit mich mit BLOB/CLOB zu befassen.

Stephan 27. Nov 2003 07:58

Re: TQuery + SQL Statement Größe
 
Hi@all,

danke für eure Hilfe. Aber was sind parametrisierte Query ? Und wie kann ich das machen?

Robert_G 27. Nov 2003 16:06

Re: TQuery + SQL Statement Größe
 
Delphi OH:

Zitat:

To create parameters at runtime, you can use the

ParamByName method to assign values to a parameter based on its name (not available for TADOQuery)
Params or Parameters property to assign values to a parameter based on the parameter's ordinal position within the SQL statement.
Params.ParamValues or Parameters.ParamValues property to assign values to one or more parameters in a single command line, based on the name of each parameter set.

The following code uses ParamByName to assign the text of an edit box to the :Capital parameter:

SQLQuery1.ParamByName('Capital').AsString := Edit1.Text;

The same code can be rewritten using the Params property, using an index of 0 (assuming the :Capital parameter is the first parameter in the SQL statement):

SQLQuery1.Params[0].AsString := Edit1.Text;

The command line below sets three parameters at once, using the Params.ParamValues property:

Query1.Params.ParamValues['Name;Capital;Continent'] :=
VarArrayOf([Edit1.Text, Edit2.Text, Edit3.Text]);

Note that ParamValues uses Variants, avoiding the need to cast values.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:59 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