Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Auswahlabfrage liefert chinesische Zeichen

454 views
Skip to first unread message

Christoph Schneegans

unread,
Mar 12, 2009, 2:22:25 PM3/12/09
to
Hallo allerseits!

Ein Kollege zeigte mir heute eine Auswahlabfrage unter Access 2003,
die sich ausgesprochen merkwürdig verhielt. Auf einer Tabelle

Foo
==========================
Lorem ipsum dolor sit amet

lieferte eine Abfrage analog zu

SELECT Foo AS A, Len(Foo) AS B, "" & Foo AS C FROM Bar;

folgendes seltsames Ergebnis:

A B C
==================================
## 26 Lorem ipsum dolor sit amet

Dabei steht # für ein chinesisches Zeichen. Die Spalten B und C habe
ich erst zur Fehleranalyse eingebaut; die Verkettung mit einem leeren
String hat das Symptom also offenbar beseitigt, die Ursache aber
natürlich nicht.

Die Datenbank liegt mir leider derzeit nicht vor. Ich möchte aber
trotzdem fragen, ob jemand so ein Verhalten schon einmal beobachtet
hat.

--
<http://schneegans.de/web/xhtml/> · Klare Antworten zu XHTML

Peter Doering

unread,
Mar 13, 2009, 6:23:19 AM3/13/09
to
Hallo Christoph,

Christoph Schneegans wrote:

Bei sowas kommt mir als erstes die Collation in den Sinn. Was ist denn fuer
die MDB eingestellt? Menue Tools - Options - Tab General - New database
sort order (unten rechts). Wenn nichts abweichendes verlangt ist, sollte da
General stehen.

Gruss - Peter

--
Mitglied im http://www.dbdev.org
FAQ: http://www.donkarl.com
NEK1 Zusatztermin wg. hoher Nachfrage:
Sa/So 21./22.3.2009 http://www.donkarl.com/NEK

Jens Schilling

unread,
Mar 13, 2009, 6:41:27 AM3/13/09
to
Hallo, Christopf

Christoph Schneegans wrote:
> Lorem ipsum dolor sit amet
> lieferte eine Abfrage analog zu
> SELECT Foo AS A, Len(Foo) AS B, "" & Foo AS C FROM Bar;
> folgendes seltsames Ergebnis:
> A B C
> ==================================
> ## 26 Lorem ipsum dolor sit amet
>
> Dabei steht # für ein chinesisches Zeichen. Die Spalten B und C habe
> ich erst zur Fehleranalyse eingebaut; die Verkettung mit einem leeren
> String hat das Symptom also offenbar beseitigt, die Ursache aber
> natürlich nicht.

Handelt es sich vielleicht bei dem Feld um ein Memo-Feld ?

Mich hat jetzt weniger Deine Beschreibung, denn Deine Lösung (Verkettung)
auf die mögliche Ursache (Memo) aufmerksam gemacht, denn mit der von Dir
beschrieben Methode habe ich auch einmal in Allen Brownes MemoBug-Demo
erfolgreich gespielt gehabt.

http://allenbrowne.com/bug-18.html

Gruss
Jens


Christoph Schneegans

unread,
Mar 13, 2009, 7:09:39 AM3/13/09
to
Peter Doering schrieb:

> Bei sowas kommt mir als erstes die Collation in den Sinn. Was ist
> denn fuer die MDB eingestellt?

Wo sehe ich denn, welche Kollation für die _aktuelle_ Datenbank oder
ein Feld verwendet wird? Die "Sortierreihenfolge für neue DB" kann
ja nachträglich jederzeit geändert werden.

Peter Doering

unread,
Mar 13, 2009, 7:38:31 AM3/13/09
to
Hallo Christoph,

Christoph Schneegans wrote:

> Peter Doering schrieb:
>
>> Bei sowas kommt mir als erstes die Collation in den Sinn. Was ist
>> denn fuer die MDB eingestellt?
>
> Wo sehe ich denn, welche Kollation für die _aktuelle_ Datenbank oder
> ein Feld verwendet wird?

Im Direktfenster (Ctrl-G):

? CurrentDb.CollatingOrder

"General" waere 1033

Um sie fuer die aktuelle DB zu aendern, musst du nach der Aenderung hier
einen Compact/Repair ausfuehren.

Christoph Schneegans

unread,
Mar 13, 2009, 7:51:17 AM3/13/09
to
Jens Schilling schrieb:

> Handelt es sich vielleicht bei dem Feld um ein Memo-Feld ?

Ja.

> http://allenbrowne.com/bug-18.html

Paßt genau, besten Dank. Die "ErsterWert" statt "Gruppierung" tritt
der Fehler nicht mehr auf, und ohnehin war "Gruppierung" in dieser
Abfrage logisch verkehrt.

Christoph Schneegans

unread,
Mar 13, 2009, 8:09:16 AM3/13/09
to
Peter Doering schrieb:

>> Wo sehe ich denn, welche Kollation für die _aktuelle_ Datenbank
>> oder ein Feld verwendet wird?
>

> ? CurrentDb.CollatingOrder

Argh, und ich habe im Objektkatalog nach "collate" und "collation"
gesucht.

> "General" waere 1033

Ist eingestellt. Das Problem wurde ja erkenntlich nicht durch eine
abweichende Kollation ausgelöst, aber ich finde das Thema trotzdem
sehr spannend. Besten Dank für deine Hinweise.

--
<http://schneegans.de/sv/> · Schema-Validator für XML

Karl Donaubauer

unread,
Mar 13, 2009, 8:24:10 AM3/13/09
to
Christoph Schneegans wrote:
> Jens Schilling schrieb:
> ...

>> http://allenbrowne.com/bug-18.html
>
> Paßt genau, besten Dank. Die "ErsterWert" statt "Gruppierung" tritt
> der Fehler nicht mehr auf, und ohnehin war "Gruppierung" in dieser
> Abfrage logisch verkehrt.

Es gibt übrigens auch einen KB-Artikel:
http://support.microsoft.com/kb/889490/en-us

Bei den diversen NG-Diskussionen fand ich bisher die Theorie
mit der chinesischen Industriespionage als eigentliche Ursache
am einleuchtendsten:
http://groups.google.com/group/microsoft.public.de.access/browse_frm/thread/d2b040630f792e32/3e083f8618f77a14

--
cu
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com
1. .NET-Entwickler-Konferenz für Accessler: www.donkarl.com?nek

Christoph Schneegans

unread,
Mar 13, 2009, 11:34:16 AM3/13/09
to
Karl Donaubauer schrieb:

> http://support.microsoft.com/kb/889490/en-us

Wow, der Bug ist erst seit 10 Jahren bekannt...

0 new messages