Mehrere Tables updaten

manjunja

Grünschnabel
Hi Cracks,

ich nutze phpmyAdmin 2.5.3 und habe folgendes Problem, was für Euch ein Klacks ist :rolleyes:

Ich möchte alle Felder die einen bestimmten Wert enthalten ändern.

Die Tabelle heisst 'members'
Das Feld heisst 'allow' und kann den Wert 1 oder 0 haben

Ich möchte nun eine Abfrage machen, die mir anzeigt, welche Felder alle auf 0 stehen und diesen Wert dann auf 1 setzen.

Die Abfrage der Zellen müsste ja so gehen:
PHP:
SELECT `allow` FROM `members` WHERE 1 AND `allow_admin_mails` = 0
Oder?
Jetzt muss ich nur noch diese Werte auf 1 setzen, wie gehts?

thanx in @vance
micha
 
Das is ja easy :)

PHP:
SQL:

select * from mebers where allow = 1; //sucht alle Zeilen, wo allow = 1 ist

update members set allow = 1 where allow = 0 //ersetzt das Feld allow = 1 durch allow =1, überall dort, wo allow = 0 ist.
 
Warum wollen eigentlich umbedingt alle Datenbanken benutzen und programmieren können, zeigen aber keinen Funken von Eigeniniziative? Das ist jetzt weniger als Basic von SQL und findest du haufenweise im Netz. Einiges schneller als du hier die Lösung bekommst. Zudem hat mysql auf http://www.mysql.com ein riesen Manual! Also versucht es doch selber erstmals, bevor ihr hier postet...

so, war jetzt nicht böse gemeint, nur ne Anmerkung ;)

PS: Falls du über mehrere Tabellen updaten möchtest, kanns sein, dass es nicht geht. Denn mit einer älteren MySQL Version ist das noch nicht möglich
 
Servus,

danke für die prompte Antwort, aber ich bekomme nach der Ausführung dieser Zeile:
PHP:
UPDATE  'members' SET  'allow' = 1 WHERE  'allow' = 0
eine Fehlermeldung ... snief ... was habe ich falsch gemacht?

cya
micha
 
Hi,

Warum wollen eigentlich umbedingt alle Datenbanken benutzen und programmieren können, zeigen aber keinen Funken von Eigeniniziative? Das ist jetzt weniger als Basic von SQL und findest du haufenweise im Netz. Einiges schneller als du hier die Lösung bekommst. Zudem hat mysql auf http://www.mysql.com ein riesen Manual! Also versucht es doch selber erstmals, bevor ihr hier postet...
1. Frage mich ernsthaft, warum es Foren im Internet gibt, eine Lösung findet man bestimmt auch irgendwo im Netz
2. Kann ich mit den Erklärungen auf mysql.com nix anfangen
3. Habe ich auch schon die Suche hier benutzt gehabt, aber nix gefunden
4. Hättest Du anstatt das obige zu schreiben auch ne Lösung schreiben können, das wäre weniger Arbeit gewesen
so, war jetzt nicht böse gemeint, nur ne Anmerkung ;)
dito ;)

cya
micha
 
Hi,

okay hat funktioniert .... danke ... habe aber noch eine weitere Frage zu dem Thema ...

Von ca. 800 Zellen sind nur 367 upgedatet worden, da die anderen einen Haken in "NULL" haben und daher ja nicht den Wert 0 haben sondern NULL .... wie ist denn die Syntax um "NULL" in 0 umzuwandeln?

thanks in @vance
micha
 
Original geschrieben von manjunja
Hi,


1. Frage mich ernsthaft, warum es Foren im Internet gibt, eine Lösung findet man bestimmt auch irgendwo im Netz
2. Kann ich mit den Erklärungen auf mysql.com nix anfangen
3. Habe ich auch schon die Suche hier benutzt gehabt, aber nix gefunden
4. Hättest Du anstatt das obige zu schreiben auch ne Lösung schreiben können, das wäre weniger Arbeit gewesen

dito ;)

cya
micha
1. Foren gibt es meiner Meinung nach, damit wenn man nicht mehr weiterkommt (also nachdem man vorher schon selbst probiert und gesucht hat) fragen kann. Und nicht, damit andere deine Sachen machen...
2. hmm, ach ja stimmt, ist ja auf englisch... na das ist ja Pech.. :(
3. Noch nie was von google gehört?
4. Klar hätt ich ne Lösung schreiben können, wollte ich aber nicht :) zudem hats ja Ralph schon gepostet...

PS:
UPDATE 'members' SET 'allow' = 1 WHERE 'allow' = 0 AND allow is NULL

PS2 : hab grad dein Alter gesehen.. sorry, dachte du seist so ein 12 jähriges möchtegern-Script-Kiddie (alle die, die sich jetzt angesprochen fühlen: ist nicht böse gemeint ;)), die nerven mich nämlich langsam :) Ich nehm alles zurück und viel Spass weiterhin ;-)
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück