Die Frage ist ziemlich selbsterklärend. Ich möchte ein einfaches Suchen und Ersetzen durchführen, wie Sie es in einem Texteditor für die Daten in einer Spalte meiner Datenbank tun würden (MsSQL unter MS Windows Server 2003).
sql
sql-server
Jiaaro
quelle
quelle
WHERE
?wie so:
Beispiel: Ersetzt <script ... durch <a ..., um Javascript-Schwachstellen zu beseitigen
quelle
<script>
Tag erforderlich ist , z. B. using<style>
oder<object>
tags oder böswilligesrc
Attribute oderonerror
Attribute.Dies hat mich in die richtige Richtung gelenkt, aber ich habe eine
ntext
Datenbank , die aus MSSQL 2000 stammt und immer noch den Datentyp für die Spalte verwendet, für die ich ersetzt habe. Wenn Sie versuchen, REPLACE für diesen Typ auszuführen, wird folgende Fehlermeldung angezeigt:Die einfachste Lösung, wenn Ihre Spaltendaten passen
nvarchar
, besteht darin, die Spalte beim Ersetzen umzuwandeln. Ausleihen des Codes aus der akzeptierten Antwort :Das hat bei mir perfekt funktioniert. Dank dieses Forumsbeitrags habe ich das Update gefunden. Hoffentlich hilft das jemand anderem!
quelle
Im Folgenden wird in jeder Datenbank (mit Ausnahme von Systemdatenbanken) in jeder Tabelle der Instanz, mit der Sie verbunden sind, eine Zeichenfolge gefunden und ersetzt:
Wechseln
'Search String'
Sie einfach zu dem, was Sie suchen und'Replace String'
durch das, durch das Sie es ersetzen möchten.Hinweis: Dies ist weder ideal noch optimiert
quelle
Wenn Sie mit SQL Server 2005 oder höher arbeiten, steht unter http://www.sqlsharp.com/ auch eine CLR-Bibliothek zur Verfügung , die .NET-Implementierungen von Zeichenfolgen- und RegEx-Funktionen bereitstellt, die je nach Datenträger und Datentyp möglicherweise vorhanden sind einfacher zu verwenden und in einigen Fällen können die .NET-Zeichenfolgenmanipulationsfunktionen effizienter sein als die von T-SQL.
quelle