![]() |
Datenbank: Firebird • Version: 1.5.2 • Zugriff über: Zeos 6.5.1
[SQL] Fehler bei Sortierung?
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
wenn ich in meinem Programm die Abfrage
SQL-Code:
ausführe, erhalte ich das im Screenshot dargestellte Ergebnis. Der Screenshot stammt aus IBExpert, wo ich das gleiche Ergebnis erhalte. Rätselhaft sind für mich die letzten drei Datensätze, die anscheinend nicht sortiert dargestellt werden.
Select STRARTIST from
TBLARTISTS order by STRARTIST Hat jemand einen Tip, woran das liegen könnte? Gruß Frank |
Re: [SQL] Fehler bei Sortierung?
Zitat:
|
Re: [SQL] Fehler bei Sortierung?
Welcher Zeichensatz? Welche Collation? Die Sortierung stimmt eigentlich, bis auf die Tatsache das die kleinen Buchstaben nach den großen kommen! ;-)
|
Re: [SQL] Fehler bei Sortierung?
Hallo,
@Bernhard: ja, das könnte der Grund sein. :wall: @mkinzler: Zeichensatz ist UNICODE_FSS (wg. Umlauten) Collation keine Gruß Frank |
Re: [SQL] Fehler bei Sortierung?
Setze mal einen Collation (Sortierreihenfolge)
|
Re: [SQL] Fehler bei Sortierung?
Hallo,
ich hab jetzt eine neue Tabelle erzeugt mit Charset Win1252 und Collation ebenfalls auf Win1252, trotzdem keine Änderung.... Edit: In der IBExpert-Doku stand drin, dass "Win1252" für "westliche" Datenbanken empfohlen wird, deshab hab ich das geändert. Gruß Frank |
Re: [SQL] Fehler bei Sortierung?
Ich hab immer ISO8859_1 und Collection DE_DE genommen und das ging super.
|
Re: [SQL] Fehler bei Sortierung?
Zitat:
So, mal eben in DB nachgeschaut : kein collate nötig. |
Re: [SQL] Fehler bei Sortierung?
Hallo,
danke für die Antworten, ich werd den Zeichensatz umstellen, das Collate mal entfernen und dann mit UPPER sortieren und dann mal schauen, wie das Ergebnis ausschaut. Gruß Frank |
Re: [SQL] Fehler bei Sortierung?
Kann ich nachträglich bei einer Firebird-DB das cahrset und collate bei bestehenden Tabellen abändern?
Gibt es eine Möglichkeit die Sortierung über irgendwelche Proceduren o.ä. regeln? |
Re: [SQL] Fehler bei Sortierung?
Ja in dem du eine eigene Collation anlegst
![]() Aber bei deinem Problem hilft schon die Anlage einen Expression Index auf UPPER() (Bei Update auf FB2) |
Re: [SQL] Fehler bei Sortierung?
"jodelpeter.de"... wie findet Ihr nur solche Seiten?
|
Re: [SQL] Fehler bei Sortierung?
@mkinzler
sorry, aber die Seite die du gepostet hast versteh ich nicht :stupid: Kannst du das etwas genauer erläutern? Weitere Infos zu meinem Problem: Wenn ich Daten selektier und die zB. nach Name sortiere werden die Umlaute nach dem Buchstaben z eingeordnet. Natürlich finden unsere Kunden das nicht so wirklich gut. Die wollen natürlich, dass ein ä nach einem a einsortiert wird usw. DB-Systeme wie MSSQL und Oracle liefern mir die Daten genauso, wie ich sie brauche. Nur Firebird will da mal wieder eine Ausnahme machen. Und soweit ich das hier und in anderen Artikeln gelesen habe erreiche ich das eben über das Setzen des Charset und der Collation. Wenn ihr noch eine andere Lösung kennt, immer her damit. |
Re: [SQL] Fehler bei Sortierung?
Zitat:
![]() |
Re: [SQL] Fehler bei Sortierung?
Hm, hilft mir jetzt nicht so wirklich weiter.
Wie das bei Oracle so ist weiß ich nicht, aber Die von MSSQl sind keine Hellseher, da werde ich, soweit ich das gesehen habe, bei der Installation zb. nach der Sortierreihenfolge gefragt ;) |
Re: [SQL] Fehler bei Sortierung?
So, weiteres Problem :)
ich hab jetzt mal eine neue DB angelegt, mit charset iso8859_1. Tabellen eingefügt und Inhalte. So, wenn ich jetzt ein Select mit Order by per ZEOS abschicke hängt sich das Programm auf??? Ohne das Order by läuft es soweit. Kennt das jemand? Ursache/Lösung? |
Re: [SQL] Fehler bei Sortierung?
Existiert ein Index auf die zu durchsuchende Spalte?
|
Re: [SQL] Fehler bei Sortierung?
In dem Fall nein.
Ich probier das mal aus. Danke dir. |
Re: [SQL] Fehler bei Sortierung?
Ich verwende für meine Firebird 1.5.3 Volltextdatenbank (ca 1 Mio Einträge, Länge 25 VARCHAR) den Zeichensatz WIN1252 und die Collation PXW_INTL850. Alle Einträge mache ich grundsätzlich in Großbuchstaben (also alle Eingaben mit ansiuppercase() konvertiert.
Damit erfolgt die Sortierung nach DUDEN. Falls du keine Collation in der Tabelle verwendest, genügt es ja, in der ORDER BY Anweisung diese anzugeben, also " ORDER BY STRARTIST collate PXW_INTL850" Zeichensätze siehe ![]() |
Re: [SQL] Fehler bei Sortierung?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:05 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