Methoden einen Datensatz aus Datenbank (cubesql) zu lesen

Ich frage mich, ob man das Lesen beim cubesql ebenfalls so dramatisch beschleunigen kann wie beim Schreiben

Wenn ich das richtig verstanden habe, wird hier bei jedem Abrufen eines Feldes eine Kommunikation mit dem Server aufgebaut. Das ist doch das gleiche Problem wie beim Schreiben. Wie kann das beschleunigt werden?

r=dbfakt.SQLSelect(“select rowid, * from artikel where feldj=’”+artikelnummer+"’")
eingabe_freies_feld1.text=r.field(“freies_feld1”).StringValue
eingabe_freies_feld2.text=r.field(“freies_feld2”).StringValue
eingabe_freies_feld3.text=r.field(“freies_feld3”).StringValue
eingabe_freies_feld4.text=r.field(“freies_feld4”).StringValue
eingabe_freies_feld5.text=r.field(“freies_feld5”).StringValue
eingabe_freies_feld6.text=r.field(“freies_feld6”).StringValue
usw…

Der übliche Rat ist, kein * beim SQL zu verwenden. Aber daß für jedes Feld eine Verbindung zum Server aufgebaut wird, halte ich für ein Gerücht.

Wenn ich hier den * weglasse ist die Auswahl 0, lasse ich Komma und * weg ist es ein Nil

Du musst die Spalten angeben:

r=dbfakt.SQLSelect("select rowid, artikelnummer, bezeichnung, preis from artikel where feldj='"+artikelnummer+"'")

ich rufe dort 80 Spalten auf… das wird dann sehr unübersichtlich… also alle und deshalb ja der *

Ich wei natrlich was ihr meint, brauche ich nur 3 Spalten, dann rufe ich nur die 3 auf… aber in dem Fall oben brauche ich tatschlich alle.

[quote=112676:@Stefan Sicurella]Wie kann das beschleunigt werden?[/quote]In dem Fall nichts.

Danke

[quote=112676:@Stefan Sicurella]<…>Wie kann das beschleunigt werden?

r=dbfakt.SQLSelect(“select rowid, * from artikel where feldj=’”+artikelnummer+"’")
<…>[/quote]

Je nachdem wie umfangreich die Tabelle artikel ist, bringt es etwas einen Index auf das Suchfeld (feldj) zu erstellen

CREATE INDEX IF NOT EXISTS index_name on table_name (column_name);

And you may want to study the Performance Tips section for SQLiteDatabse here:
https://documentation.xojo.com/index.php/SQLiteDatabase

Danke