Dies ist eine mobil optimierte Seite, die schnell lädt. Wenn Sie die Seite ohne Optimierung laden möchten, dann klicken Sie auf diesen Text.

MySQL-Problem

    Nobody is reading this thread right now.

Katze.

Hacker
Registriert
29. Dezember 2007
Beiträge
417
Reaktionspunkte
158
Punkte
43
Ort
"Bär"lin
Gebe ich diesen Befehl ein:

UPDATE adressen SET email = REPLACE(email, 'TomFaust@armyspy.com', 'TomFaust@armyspy.de') WHERE id =2;

kommt diese Rückmeldung:
Query OK, 1 row affected (0,04 sec)
Rows matched: 1 Changed: 1 Warnings: 0
und alles ist super!

Nach diesem Befehl :
UPDATE adressen SET email = REPLACE(email, '%.com', '%.de') WHERE id =2;
kommt diese Rückmeldung:
Query OK, 0 rows affected (0,00 sec)
Rows matched: 1 Changed: 0 Warnings: 0

„%“ steht für den Rest des String, der nicht geändert werden soll.

Warum funktioniert der erste Befehl und der zweite nicht.

Diese kleine Datenbank, mit erfundenen Daten, habe ich extra hierfür erzeugt.
Database „beispieldatenbank“
Table „ adressen“
Fields/Columns:;
Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| vorname | varchar(40) | NO | | | |
| nachname | varchar(40) | NO | | | |
| adresse | varchar(40) | NO | | | |
| plz | varchar(5) | NO | | | |
| ort | varchar(40) | NO | | | |
| email | varchar(60) | NO | | 0 | |
| telefon | varchar(30) | YES | | NULL

„Warum will dat nich so wie ich will?“
Was mache ich falsch?

Danke für eure Hilfe
 
Hi,

ich kann in mysql leider auch nur schwindeln.
Eine Abfrage dieser Art musste ich mit CONCAT machen.

Tschau

Azo
 
Das '%' ist ein Platzhalter für LIKE und nicht für REPLACE.
"Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber bei dem Universum bin ich mir noch nicht ganz sicher."
- Albert Einstein

Bei der menschlichen Dummheit bin ich mir, bei mir, ganz sicher.
 
Für die Nutzung dieser Website sind Cookies erforderlich. Du musst diese akzeptieren, um die Website weiter nutzen zu können. Erfahre mehr…