AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi (MariaDB) Sortierreihenfolge in FDTable unterschiedlich
Thema durchsuchen
Ansicht
Themen-Optionen

(MariaDB) Sortierreihenfolge in FDTable unterschiedlich

Ein Thema von MasterDetail · begonnen am 10. Okt 2017 · letzter Beitrag vom 11. Okt 2017
 
MasterDetail

Registriert seit: 6. Sep 2016
8 Beiträge
 
#1

(MariaDB) Sortierreihenfolge in FDTable unterschiedlich

  Alt 10. Okt 2017, 15:36
Datenbank: MariaDB • Version: 10.1.13 • Zugriff über: FireDAC
Hallo,

ich habe ein kleines Problem mit der Verwendung von FDTable in Verbindung mit unserer MySQL/MariaDB-Datenbank:
Die Sortierung vom Server (Sortierung mit ORDER BY) unterscheidet sich von der Sortierung auf dem Client (welche anhand der Eigenschaft "SortLocale" sortiert).

Insbesondere gibt es Probleme mit der Sortierung von Leerzeichen und Sonderzeichen. Wir sind folgende Sortierung gewöhnt: Leerzeichen -> Sonderzeichen -> Zahlen -> Buchstaben.

Da die FDTable ja seitenweise einliest mit "LIMIT X" und "WHERE" in Verbindung mit einem Primärschlüsselwert, kommt dieser durcheinander wenn ein doppelter Datensatz auftaucht.
In der Hilfe von Embarcadero wird empfohlen, die Formatoptions der FDTable entsprechend zu setzen:

SortLocale := MAKELCID(MAKELANGID (LANG_GERMAN, SUBLANG_GERMAN), SORT_DEFAULT);
SortOptions := [soNoSymbols];
StrsTrim := false;

- "SortLocale" hat nach der Ermittlung der obenstehenden LanguageID den Wert "1031". Default-Wert wäre "1024" -> Nichts gebracht
- "[soNoSymbols]" bewirkt den gleichen Fehler schon beim Öffnen und holen der ersten 4 Datensätze.
- "StrsTrim" bewirkt keinen Unterschied.

Ich habe mal aus Spaß "SortLocale" auf 0 gesetzt. Dann trat der Fehler nicht mehr an der gewöhnlichen Stelle auf, dafür aber ein paar 10000 Datensätze weiter.
Getestet wurde es in unserem Artikelstamm, dabei ist die FDTable angewiesen, die Tabelle nach der "Benennung" zu sortieren.

Nun zu meiner eigentlichen Frage:

Arbeitet ihr auch mit FDTables?
Hattet ihr mal das gleiche Problem?
Wenn ja, welche Werte benutzt ihr für die Sortieroptionen?

Nebenbei:
Die Tabelle auf dem Server hat die Standardkollation "latin1_swedish_ci", probiert habe ich aber auch "latin1_german1_ci" und "latin1_german2_ci".
Egal welche der drei Kollationen, bei einer Abfrage über HeidiSQL stand stets das Leerzeichen an erster Stelle und dann Sonderzeichen etc....
  Mit Zitat antworten Zitat
 


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 06: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 by Thomas Breitkreuz