2017-05-31 5 views
0

私はアップロード後に一時テーブルにデータをアップロードしています。私はジョインを実行し、いくつかのカラムを選択し、それらのデータをPHPの別のテーブルにプッシュする必要があります。トリガーを使用せずに行う方法はありますかテーブルのアップロードファイルにデータをプッシュする必要があります。トリガーなしでそれを行う方法はありますか

+1

INSERT INTOテーブル.... .... SELECT .... read https://dev.mysql.com/doc/refman/5.7/en/insert-select.html –

+0

あなたは避けたいのですか?トリガー?どのデータベースを使用していますか?何を試しましたか? – k0pernikus

答えて

0

トリガーを使用してデータベースの挿入に反応したくない場合は、そのテーブルをポーリングして新しいものがあるかどうかを確認する必要があります所与の時間間隔での挿入。 1回の挿入に対して複数回反応するのを防ぐために、前回の実行で行がすでに処理されているかどうかを知るために、そのポーリングされた表にフラグが必要です。

これは、「isProcessed」フラグがfalseであるテーブルのすべての行を単に選択するPHPスクリプトを実行するCRONジョブが実行された場合に発生する可能性があります。もちろん、 "isProcessed"カラムのデフォルト値はfalseでなければなりません。

これまでのDBクエリで取得した各行について、「ジョインを実行していくつかのカラムを選択し、それらのデータを別のテーブルにプッシュして自分自身を引用する」といった操作を行います。

次に、 "isProcessed"がtrueになるように元の "temp"テーブルの同じ行を更新します。

データベーストリガーを使用しないことをお勧めします。トリガーは、行うことができる最も簡単な方法で行いたいものです。

+0

こんにちは、私はあなたの提案をありがとう、私はPHPに新しいです。あなたは私のために役立つだろう、例のスクリプトで説明することができますか? –

+0

私は自分の答えをより具体的に編集しました。 – JulienMN

関連する問題