WinFuture-Forum.de: Ms Sql 2000 Problem Text-datentyp - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Software
Seite 1 von 1

Ms Sql 2000 Problem Text-datentyp


#1 Mitglied ist offline   schumi0815 

  • Gruppe: aktive Mitglieder
  • Beiträge: 482
  • Beigetreten: 20. Juli 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:München

geschrieben 21. April 2010 - 10:00

hi,

hab hier wahrscheinlich nen dummen anfängerfehler(zumindest hoff ich das). ich will eine pfadangabe in einer ms sql 2k datenbank ändern die als text datentyp hinterlegt ist.
wenn ich ein select statement formuliere wie zB:

select spalte
from tabelle
where spalte like '%asdf%';

bekomme ich auch zwei ergebnisse. das problem ist nur, dass dann als ergebnis nicht den pfad als string oä angezeigt bekomme, sondern nur [info] dasteht. habe schon convertierung/cast in varchar oder varnchar versucht, aber da kommt nur kauderwälsch heraus.

habt ihr eine idee wie die 2 felder so auslesen kann dass ich den pfad in lesbaren letter angezeigt bekomme? (wie zb: c:asdfqwert)

alternativ wäre es auch ok wenn ich einen teilstring ändern könnte. zb den pfad von c:asdfqwert zu c:asdf2qwert. iwie eine art suchen/ersetzten.


danke.

also bin leicht am verzweifeln. hab jetzt folgendes statement in den sql query analyzer eingegebn:

use datenbank;
UPDATE	tabelle
SET			  spalte = REPLACE(CAST(spalteAS VarChar(8000)), 'asdf-1', 'asdf-2')
WHERE	 (spalte LIKE '%asdf-1%');


das macht er auch ganz schön mit der meldung "(2 row(s) affected)" aber es funktioniert immer wieder, dh ich kann den befehl 1000 mal ausführen und immer sind 2 rows affected. bin ich jetzt nur zu blöd um den query richtig abzuschicekn oda was?
0

Anzeige



#2 Mitglied ist offline   riq 

  • Gruppe: Mitglieder
  • Beiträge: 4
  • Beigetreten: 14. Juli 09
  • Reputation: 0

geschrieben 21. April 2010 - 10:38

So wie ich dich verstehe, willst du Windows Pfadangaben in eine Tabellenspalte schreiben?

Das Problem erzeugt hier wohl der Backslash.

Alternativ könntest du die Backsl mit einem "harmlosen" Zeichen ersetzen. z.b. '='

REPLACE ( string_expression , string_pattern , string_replacement )

http://msdn.microsof...y/ms186862.aspx

also:

select replace(pfad,'\','=')
from files

dazu musst du auch beim "insert" die konvertierung vornehmen

Dieser Beitrag wurde von riq bearbeitet: 21. April 2010 - 10:38

0

#3 Mitglied ist offline   schumi0815 

  • Gruppe: aktive Mitglieder
  • Beiträge: 482
  • Beigetreten: 20. Juli 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:München

geschrieben 21. April 2010 - 11:02

ich möchte eine vorhandene pfadangabe ändern. und in diesem pfad kommt explezit das wort/string asdf-1 vor.
wenn ich mit select danach suche (ich kann auch nach %\asdf-1\% suchen) bekomm ich auch 2 ergebnisse. nur leider nicht als varchar sonder als text(dateityp) der sich nur als [info] präsentiert.

das problem ist jetzt, dass ich anscheinend zu blöd bin den query richtig abzusetzen. im query analyser sagt er zwar beim ausführen vom update dass 2 betroffen sind, aber wenn ich den selben befehl nochmal ausführe kommt das selbe. dh er erkennt dass etwas betroffen ist, ändert es aba nicht.
kenn mich leider nicht sonderlich gut mit ms sql aus, aber kann ich nicht wie bei mysql mit einem cmd client connecten und dann den verdammten befehl ansetzten? (sry wegen wortwahl aba nervt mich schon den ganzen vormittag)
0

#4 Mitglied ist offline   schumi0815 

  • Gruppe: aktive Mitglieder
  • Beiträge: 482
  • Beigetreten: 20. Juli 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:München

geschrieben 21. April 2010 - 13:15

[closed]hat sich inzwischen erledigt.

lösung: ich hab es zwar nicht geschaft über osql oder den query analyser per update befehl den neuen pfad reinzupressen, aber mit dem sql enterprise manager hats doch funktioniert.

das problem war, dass man in die zeile hinter [info] klicken musste und dann einmal per pfeiltaste nach unten. dann war auch sofort die andere zeile da wo der pfad hinterlegt war. dummheit is was schönes -.-
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0