Einzelnen Beitrag anzeigen

Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#1

MS-SQL-Server und ungewöhnliches Verhalten bei Like-Abfragen

  Alt 23. Mär 2004, 11:01
Folgendes mir unerklärliches Verhalten stelle ich am MS-SQL-Server fest:

In der Tabelle mytable in der Spalte myCol (nvarchar) ist der Wert '010101'.


Ich frage die Datenbank mit folgender Query ab:

exec sp_executesql N'select * from mat where (m_matnr like @P1 )', N'@P1 nvarchar(50)', N'0101%Ѐ' (Ѐ = #$0400).

Die Abfrage muss mittels exec sp_...-Ausgeführt werden da sonst die Unicode-Zeichen überhaupt nicht durchkommen (anderes "Feature" 8) von MS-SQL).

Nach meinen Verständnis sollte doch der obige Datensatz nicht als Ergebnis geliefert werden, da das Zeichen #$0400 ja nicht im String '010101' vorhanden ist. Kommt er aber!

Wird statt #$0400 z.B. E ('0101%E') verwendet, so kommt der Datensatz nicht zurück.
  Mit Zitat antworten Zitat