Zumindest in früheren Versionen von SQL Server mussten Sie Unicode-Stringkonstanten ein "N" voranstellen, damit sie als Unicode behandelt wurden. Daher,
select foo from bar where fizz = N'buzz'
(Siehe "Serverseitige Programmierung mit Unicode" für die SQL Server 2005-Dokumentation "aus erster Hand").
Wir haben eine Anwendung, die SQL Compact Edition verwendet, und ich frage mich, ob das noch notwendig ist. Die Tests, die ich gerade durchführe, zeigen, dass sie nicht notwendig ist. Das heißt, die folgenden SQL-Anweisungen verhalten sich beide identisch in SQL CE, aber die zweite schlägt in SQL Server 2005 fehl:
select foo from bar where foo=N''
select foo from bar where foo=''
(Ich hoffe, ich fluche nicht in einer Sprache, die ich nicht kenne...)
Ich frage mich, ob das daran liegt, dass alle Zeichenfolgen in SQL CE als Unicode behandelt werden, oder ob vielleicht die Standard-Codepage jetzt Unicode-fähig ist.
Wenn jemand eine offizielle Dokumentation gesehen hat, entweder ja oder nein, wäre ich dankbar dafür.
Ich weiß, ich könnte den sicheren Weg gehen und fügen Sie einfach die "N", aber es gibt eine Menge von Code, der geändert werden müssen, und wenn ich nicht brauchen, ich will nicht! Vielen Dank für Ihre Hilfe!