T-SQL Replace

Vermutlich ist das für die meisten nichts neues, aber ich habe nun schon einige male nach dem enrsprechenden Befehl gesucht und dabei Zeit vergeudet, aus diesem Grund mach ich nun für mich selbst diesen Blog Eintrag.


Hintergrund:


In einer Datenbank (MS-SQL) sind in einem Tabellenfeld Werte die gegen andere Werte ausgetauscht werden müssen.


Ein simples Update wie das hier:

UPDATE [TABLENAME] SET [FIELDNAME] = NEWVALUE

Nun ist es aber so, dass ich nur einen Teil des Inhaltes ändern muss, im speziellen Fall wird in der Spalte der Tabelle Informationen über den Speicherort einer Datei vorgehalten.


Hier ein Beispielinhalt:


C:\Program Files\hMailServer\Data\ihrportal\AB\{AB88191E-9A94-4C08-90B8-597A4B2FA3E2}.eml


Nun befinden sich die Daten aber nicht mehr auf dem Laufwerk C: sondern die Daten befinden sich nun auf Laufwerk D: und dort in dem Verzeichnis hMailServer\Data also auf D:\hMailServer\Data. Somit muss der Inhalt des Feldes wie folgt geändert werden:


D:\hMailServer\Data\ihrportal\AB\{AB88191E-9A94-4C08-90B8-597A4B2FA3E2}.eml


Dies muss nun bei tausenden von Einträgen durchgeführt werden.


Lösung:


Um nun die Daten in der Spalte messagefilename der Tabelle hm_messages zu ändern habe ich folgedes Query ausgeführt:

update hm_messages
set messagefilename = REPLACE(messagefilename,‘C:\Program Files\hMailServer\Data’,‘D:\hMailServer\Data’)

So und nun hoffe ich das ich das nächste mal wenn ich so etwas machen möchte, daran denke dass ich dazu einen Blog Eintrag verfasst habe.


Kick It auf dotnet-kicks.de
Twitter del.icio.us Digg Facebook linked-in Yahoo Buzz StumbleUpon

Verwandte Artikel:

  1. hMail – SpamAssassin Integration in hMailServer
  2. Der angeforderte Wert Ctrl konnte nicht gefunden werden – VS 2005
  3. Awstats alte Log Dateien einlesen
  4. DotNetNuke Repository Module 3.01.13 veröffentlicht
  5. Outlook XP als Tray minimieren
This entry was posted in Code, Development and tagged , . Bookmark the permalink.

One Response to T-SQL Replace

  1. mike says:

    Danke – das hab ich gesucht!

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>