2017-02-08 5 views
-3

のは、私は、テーブルXから行を削除したいと私はそれを行うだろうどのようにテーブルYに削除した行を送信したいテーブルXとテーブルY. を持っているとしましょうか?誰かが私を助けてくれますか?その後送信、削除された行

insert into tableY select * from tableX where condition; 

:表X & Yを想定すると、おかげでたくさん

+0

でこれを行うことができます。これまでに何をしているのかを教えてください。人々はあなたの質問をこのようにdownvoteしようとしています。 –

+0

なぜこれをやりたいのですか?列属性is_deletedやdeleted_atはどうですか?もしそうならソフト削除 –

+0

を見てくださいこれは私が作成した関数です: \t function deleteData($ fname、$ connect){ \t \t $ connect = connect(); \t \t $ sqlを= "oldtable WHEREファーストネーム= '$のFNAME' から削除します。"; \t \t $ sqlを= "INTO NEWTABLE選択* oldtableどこからFIRSTNAME = '$のfnameの' INSERT;"。; \t \t $ sql_connect = mysqli_query($接続、$ SQLの場合)。 \t} – KSR

答えて

0

は、正確な構造

まず:(ある

delete from tableX where condition; 
0

これはあなたが

mysql> create table X(id int) 
-> ; 
Query OK, 0 rows affected (0.51 sec) 


mysql> create table Y(id int) 
-> ; 
Query OK, 0 rows affected (0.34 sec) 

mysql> delimiter | 
mysql> create trigger on_delete before delete on X for each row begin 
     insert into Y set id = OLD.id; 
     end ; 
     Query OK, 0 rows affected (0.06 sec) 
mysql> insert into x (1),(2); 

mysql> delete from X; 

mysql> select * from Y; 

     +------+ 
     | id | 
     +------+ 
     | 1 | 
     | 2 | 
     +------+ 
    2 rows in set (0.00 sec) 
助けとなることがあり

あなたはあなたのコードを表示するMySQLのtrigger.more参照learn about trigger

関連する問題