2017-06-15 9 views
0

私は、承認されたユーザーがテーブルからデータを更新、挿入、および削除できるWebサイトを持っています。ただし、すべての最終変更は、元のテーブルに「ライブ」される前に承認されなければなりません。元のテーブルのデータをケースバイケースで更新したいと思っています。これをデータベース側から行う最善の方法は何ですか?それはトリガーになるのだろうか?手続き?トランザクション?MYSQL更新保留承認

メインテーブルにトリガを設定する方法はありますか?更新が行われるとトリガテーブルに表示され、ライブテーブルには影響しません。

現在、私のトリガーはこのように見えます。それは動作しますが、両方のテーブルを更新しています。

私は、実際の承認/拒否のプロセスは、ウェブサイトの管理ページから行う必要があると仮定しています。私がこれまでに読んだことから、MYSQLはユーザーに入力を促すことができません。

ありがとうございます!

+1

アクティブな列があり、管理者がアクティブな列を介して承認/拒否すると表示されるのはなぜですか。 – chris85

+0

私はあなたが正しい提案であることを理解すれば、それはうまくいくとは思わない。私たちが持っているデータは、ツリー構造の形式であり、それぞれがグラフデータベースの特定のURIを持っています。私たちは、変更のあった個々のURIを保留中の承認テーブルに引き込み、承認された後にそれらを戻したいと考えています。 それは意味がありますか?あなたの提案がツリー構造のデータではうまくいかないと仮定して正しいですか? ありがとう! –

+0

承認された列が正しい値を持たない限り、アプリケーションがデータを使用しない理由がわかりません。それが表示されるまでそれをマークしないでください。 – chris85

答えて

0

この質問を確認した後、少なくとも私の知る限りでは、MySQLで直接可能なことを求めていたことがわかりました。私がやったことは、保留中の変更テーブルを作成し、それをHTMLテーブルに表示することでした。 「管理者」は、変更を承認したり拒否したりして、変更を適切なテーブルに送信します。

これは、アクティブ/非アクティブな列を使用し、上記のように列の値に基づいて行を表示することで、周りの方法で行うことができましたが、適切なデータを持つ2つの表を作成する方が簡単です。

関連する問題