Ich habe eine Datenbank mit dem Namen Account-Typ, die Wagenrücklauf und Newline-Zeichen enthält (CHAR (10) und CHAR (13)). Wenn ich nach diesem Wert suche, muss ich einen REPLACE
wie unten gezeigt tun. Der folgende Code funktioniert einwandfrei.Verwendung von REPLACE in SQL-Abfrage für Zeilenvorschub/Carriage-Return-Zeichen
SELECT AccountNumber,AccountType,
REPLACE(REPLACE(AccountType,CHAR(10),'Y'),CHAR(13),'X') FormattedText
FROM Account
WHERE AccountNumber=200
AND REPLACE(REPLACE(AccountType,CHAR(10),' '),CHAR(13),' ') LIKE
'%Daily Tax Updates: ----------------- Transactions%'
Meine Frage ist - was sind die anderen Zeichen (ähnlich CHAR (10) amd CHAR (13)), der müsste eine solche ersetzen?
Hinweis: Der Datentyp für die Spalte lautet VARCHAR
.
Hinweis: Die Abfrage wird ausgeführt von SQL Server Management Studio
Wir kennen Ihre Daten oder Ihre Anforderungen nicht, also wie sollen wir wissen, welche Zeichen Sie ersetzen müssen? –
@ dan1111. Der Benutzer kann beliebige Daten in die Datenbank eingeben. Also, was alle Charakter brauchen solch eine ERSETZUNG. Oder gibt es eine bessere Methode als REPLCAE? – Lijo
Nun, welche Zeichen möchten Sie zulassen? Es ist absolut zulässig, beliebige Zeichen einschließlich Zeilenumbrüche in einem Feld zu speichern. Wenn es welche gibt, die Sie nicht zulassen wollen, dann wegen Ihrer Design-Anforderungen (von denen wir nichts wissen). –