2012-04-14 25 views
2

Hallo, ich habe zwei Tabellen nämlichWie aktualisiert man den Wert einer Tabelle, wenn der Wert mit mysql in eine andere Tabelle eingefügt wird?

sms(Message,sms_index...columns) 
c_paid_bribe(c_addi_info,....) 

was ich will ist tun, um die Werte der Spalte Nachricht von SMS-Tabelle in c_addi_info Spalt c_paid_bribe Tabelle einfügen automatisch, wenn ein neuer Wert in sms Tabelle eingefügt wird. habe ich versucht, diese

$query=mysql_query("insert into bd_paid_bribe(c_addi_info) select Message from sms"); 

Aber wenn ein neuer Wert eingefügt wird und ich laufe die die bereits vorhandenen Werte .php-Datei auch wieder in die Tabelle einfügen .....

Antwort

0

Was Sie tun wollen, ist einfach zwei Abfragen zu machen, die in einer Transaktion comitted werden. Dafür sind Transaktionen. Sehen Sie hier für Beispiele, wie man es macht: PHP + MySQL transactions examples

+0

Ich möchte eine Abfrage schreiben, wenn ich einen Datensatz in eine Tabelle einfügen, dann sollte dieser Datensatz automatisch in eine andere Tabelle eingefügt werden .... helfen Sie mir .... – sree

+0

Dann schauen Sie sich die Trigger an. Aber ich würde immer noch darüber nachdenken, da Sie Ihre Funktionalität in MySQL verstecken werden. Das riecht nach Fehlern und unerwarteten Verhaltensweisen, die auf mich warten. Ich würde meinen php Code eher entwerfen, um diese Einfügung (en) zusammenzuhalten, so dass es jedem klar ist, der den Code liest, was vor sich geht. Aber in Ihrem Fall könnte das einzig Vernünftige Auslöser sein, denken Sie nur an die Konsequenzen, wenn es um Lesbarkeit und Transparenz Ihres Codes geht. – barsju

+0

können Sie mir bitte den besseren Weg zeigen, um dieses Problem zu lösen .... Ich habe sms Tabelle in dieser Nachricht Spalte ist da, und ich möchte alle Dinge in dieser Nachricht Spalte in die Spalte c_addi_info von c_paid_bribe Tabelle und wann immer neu Wert wird in diese Nachrichtenspalte eingefügt, sollte es in meine Spalte c_addi_info aktualisiert werden .... zeigen Sie mir den besseren Weg dafür, auch in PHP ist es in Ordnung ... Ich breche den Kopf für die mögliche Lösung ... – sree

1
Q: what i want to do is to insert the values of Message column of sms table into c_addi_info column of c_paid_bribe table automatically whenever a new value is inserted into sms table. 

A: wenn Sie eine Tabelle aktualisieren möchten, wenn eine andere geändert wird (und aus welchen Gründen auch immer, kann man nicht einfach tun dies in Ihrer Anwendung), dann „Trigger“ verwenden:

http://net.tutsplus.com/tutorials/databases/introduction-to-mysql-triggers/

Q: But when a new value is inserted and i run the .php file the already existed values are also inserting into the table again..... 

A: Sie möchten ein "upsert". Zum Beispiel:

How do I update if exists, insert if not (AKA "upsert" or "merge") in MySQL?

+0

können Sie mir zeigen, wie man den Auslöser für die oben genannte Frage benutzt, wie ich ein Neuling zu diesem mysql bin. Ich bin wenig verwirrt, wie man das benutzt .... – sree

Verwandte Themen