Wenn Variable A = "x" eingügen in Variable B "z"
jpsaenz
- datenbank
Hi!
ich möchte eine Anweisung schreiben, welche ein bestimmtes Feld überprüft und wenn sich darin eine bestimmte email-adresse befindet, in einem anderen Feld derselben Tabelle was schreibt. (Es geht darum, eine Reihe von Users bestimmten Passwörter zu vergeben).
Ich habe es mir so vorgestellt:
USE TABLE customers
CASE 'customers_email_address' WHEN 'user@email.tld' THEN INSERT INTO customers
(customers\_password
) VALUE ('63fed77b1f89caa6362221bd69e9cd65');
das funktioniert aber nicht. Mit der IF Anweisung
SELECT * FROM customers
WHERE 1
IF ('customers_email_address'=='user@email.tld') INSERT INTO (customers\_password
) VALUE ('63fed77b1f89caa6362221bd69e9cd65');
geht das auch nicht.
Wie muss ich vorgehen? Ich habe bereits in der entsprechenden Dokumentation nachgeschut aber nichts gefunden...
Danke im Voraus!
Saludos,
Juan Pablo
Hi,
CASE 'customers_email_address' WHEN 'user@email.tld'
Wie hoch ist die Wahrscheinlichkeit, daß diese beiden unterschiedlichen Strings identisch sind?
Vermutlich soll das erste eher ein Spaltenname sein.
IF ('customers_email_address'=='user@email.tld')
Die Wahrscheinlichkeit hat sich nicht geändert.
Aber hier müßte bei den meisten DBMS noch eine Fehlermeldung wegen des unbekannten Operators kommen, m.W. verwenden die meisten DBMS für den Vergleich _und_ für die Zuweisung (set bla = blubb) denselben Operator '='.
INSERT INTO (
customers\_password
) VALUE ('63fed77b1f89caa6362221bd69e9cd65');
Hier weißt Du, wie Du Spaltennamen ansprichst ...
cu,
Andreas
Hi,
CASE 'customers_email_address' WHEN 'user@email.tld'
Wie hoch ist die Wahrscheinlichkeit, daß diese beiden unterschiedlichen Strings identisch sind?
Vermutlich soll das erste eher ein Spaltenname sein.
ganz richtig.
Ich versuche es anders zu erklären. Ich möchte folgendes erreichen:
WENN customers_email_address = mirbekannte@email.com DANN SCHREIBE IN customers_password 'mirbekanntespasswort'
wobei 'customers_email_address' und 'customers_password' Felder in der Tabelle 'users' sind.
Daß ich kein Experte in MySQL bin ist klar, deswegen frage ich ja hier um Hilfe.
cu,
Andreas
Saludos,
jp
Hi,
Hallo,
WENN customers_email_address = mirbekannte@email.com DANN SCHREIBE IN customers_password 'mirbekanntespasswort'
Dein erster Post hat mich verwirrt, aber dies ist schon verständlicher.
Die SQL Syntax hat etwas andere Grammatik :)
SCHREIBE IN tabelle IN FELD customers_password = 'mirbekanntespasswort' WENN customers_email_address = mirbekannte@email.com
übersetzt heißt das dann:
UPDATE tabelle SET customers_password = 'mirbekanntespasswort' WHERE customers_email_address = mirbekannte@email.com
Saludos,
jp
mfg Pryos
übersetzt heißt das dann:
UPDATE tabelle SET customers_password = 'mirbekanntespasswort' WHERE customers_email_address = mirbekannte@email.com
hat super geklappt - danke!
jp
hat super geklappt - danke!
kein Ding, aber nächstes mal bitte in die Doku schauen. Das Problem war nicht mal eines Anfängers würdig ;)
jp
mfg pryos
kein Ding, aber nächstes mal bitte in die Doku schauen. Das Problem war nicht mal eines Anfängers würdig ;)
ist mir bewußt, habe aber z.Z. tausend andere Probleme zu lösen und da gab's wenig Zeit für. Trotzdem hast Du Recht, und gerade deswegen: danke noch mal!
Gruß,
jp