AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Fehler bei Bereichsprüfung
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler bei Bereichsprüfung

Ein Thema von Captnemo · begonnen am 27. Jun 2012 · letzter Beitrag vom 29. Jun 2012
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#11

AW: Fehler bei Bereichsprüfung

  Alt 28. Jun 2012, 10:28
Zufällig geht es auch hier um ZEOS, demnach scheint es sich dabei um ein echte Krankheit zu handeln.

Hast Du es einmal mit abgeschalteter Bereichsprüfung versucht?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#12

AW: Fehler bei Bereichsprüfung

  Alt 28. Jun 2012, 13:34
Wenn du Projektoptionen - Compiler - Laufzeitfehler - Bereichsüberprüfung meinst, den hab ich schon die ganze Zeit abgeschaltet.

Ich habe jetzt die ganze Routine umgestellt. Ziel war, dem Benutzer aus den 3 Tabellen eine Feldauswahl zur Verfügung zu stellen, und hinterher die Daten entsprechend seiner Auswahl zu übernehmen. Ich mußte aber auch sicherstellen, dass mittels join die Daten der 3 Tabellen zusammen zu führen ist.

Im erten Ansatz wollte einfach alle Daten der 3 Tabellen erst einmal in meine MySQL-DB zu übernehmen um dann dem Benutzer seien Auswahl anzeigen zu lassen. Das hat aber auf Grund der hohen Feldanzahl zu dem bekannten Fehler geführt.

Jetzt bin anders herangegangen. Ich lese einfach vorab alle Feldnamen aus den 3 Tabellen aus, und übertrage diese in die Comboboxen für die Auswahl des Users. Erst wenn die Daten dann übernommen werden sollen, erstelle ich mir die TMP-Tabellen, aber eben nur mit den Feldern, die tatsächlich benötigt werden.
Dann klappt auch die Abfage mit Platzhaltern und (!) mit zwei JOIN's in der Abfrage (Fahrzeug -> Kunden -> Anrede).

Problem ist also für mich gelöst. Erkenntnis daraus: Ab einer gewissen Felderanzahl kommt Zeos einfach an seine Grenzen.
Sicherlich ließe sich in den Sources von Zeos das Problem ergründen, aber dazu fehlt mir jetzt die Muße.

(Wird Zeos eigentlich noch weiterentwickelt?) <- Nur mal so am Rande.
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#13

AW: Fehler bei Bereichsprüfung

  Alt 28. Jun 2012, 22:11
Eine Rückfrage im Forum ZeosLib hat alles bestätigt. Es wird je Row im Query-Result max. 32 kb reserviert. Interessant dabei ist, dass jeweils der maximal benötigte Platz eines Feldes verwendet wird, unabhängig ob sie NULL, leer, nur 2 Zeichen oder bis zu ihrer definierten Größe belegt ist. Das heist eine Feld varchar(200) belegt bei der Abfrag über Zeos immer 200 Byte im Speicher, egal was drin steht.
Das erklährt bei 330 Feldern schon so einiges (hab's jetzt aber nicht nachgerechnet).

Hier der Link zum Thread (wenn das hier an dieser Stelle nicht erlaubt, bitte bescheid geben)
http://zeos.firmos.at/viewtopic.php?t=3531

Ab Zeos 7 soll der Buffer auf 64 kb erhöht sein.
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo

Geändert von Captnemo (28. Jun 2012 um 22:14 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.009 Beiträge
 
Delphi 12 Athens
 
#14

AW: Fehler bei Bereichsprüfung

  Alt 29. Jun 2012, 09:35
Ab Zeos 7 soll der Buffer auf 64 kb erhöht sein.
Was das Problem im Grunde aber nicht löst.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Captnemo
Captnemo

Registriert seit: 27. Jan 2003
Ort: Bodenwerder
1.126 Beiträge
 
Delphi XE4 Architect
 
#15

AW: Fehler bei Bereichsprüfung

  Alt 29. Jun 2012, 16:58
Richtig. Und im Zuge der Entwicklung, und der immer größer werdenden Speicher, und der zu verwaltenden Datenmengen, ist das Problem damit nur weiter in die Zukunft verlagert.

Noch besser wäre es natürlich einen solchen Fehler anzufangen, und ggf. wenigstens eine Teilmenge zurückzuliefern. Und noch besser wäre es, wenn innerhalb der Komponenten der Buffer vom Entwickler festgelegt werden könnte.

Aber immerhin. Jetzt, wo ich davon weiß, finde ich Möglichkeiten mir zu helfen. Bedeutet zwar mehr Programmieraufwand, aber damit kann ich leben.
Dieter
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt. Die 10. summt dazu die Melodie von Supermario Bros.
MfG Captnemo
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:46 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