2016-11-07 5 views
-1

私は6つのデータベーステーブルを持っていて、一緒にプロジェクトを表示し、プロセスは各プロジェクトに割り当てられています。また、ユーザーは各プロセスに割り当てられます。MySQL - テーブルをコピーする毎週の更新トリガーで

私が望むのは、毎週日曜日にデータベースにコピーしたテーブルをシステムコピーして保存することです。毎週日曜日にすべてのデータをコピーし、日付に基づいて保存されたレコードを表示するトリガーのようなトリガーです。例:

1つのプロセスで1つのプロジェクトがあります。プロセスリーダー、プロセスチェッカー、プロセススタッフとして3人のユーザーが処理に割り当てられました。

テーブルをコピーして、名前

User06/11/16 
Project06/11/16 
Process06/11/16 
Proc_leader06/11/16 
Proc_checker06/11/16 
Proc_staff06/11/16 

またはこのような何かをコピーしたテーブルを作成する必要があり、それは日曜日のシステムに来ます。

Show Records for 23/10/16 
Show Records for 30/10/16 
Show Records for 06/11/16 

そして、それはそのテーブルからデータを表示する必要があります。そして、ユーザーは次のようなものが表示されますView Historyボタンやシステムを押すことができるはずです。

私はSQLでそれほど経験はありませんが、これを実践するには十分な知識がありません。だから私は助けを求めている。任意のアイデアどのように私はこれを達成することができますありがとう

+1

[tag:mysql]と[tag:sql-server]は全く異なる2つの製品です。 *両方の*タグを1つの質問に適用することはまれです。どの製品を使用していますか? –

+0

@Damien_The_Unbeliever私はmysqlを使用しています。 SQL Serverタグを削除しました –

+0

タイトルに残しました – Strawberry

答えて

1

cronジョブを作成する必要があります。以下の手順を使用してください。

1 create table [like][1] master table (Append date with name) . 

2 Create sql for inserting record form master tables to New tables created at step 1 http://dev.mysql.com/doc/refman/5.7/en/insert-select.html. 

要件に応じてcronジョブをスケジュールします。

1

トリガーはあなたの助けになりません、あなたが必要なのはSQL Agent Jobです。

毎週日曜日にジョブをスケジュールする必要があります。その前に

、日付と、すなわち動的にする新しいテーブル名を必要として、あなたはdynamic sqlを作成する必要があるかもしれません

select * into NewTable from ExistingTable 

以下のような新しいテーブルにあなたのテーブルをコピーするクエリを作成します。

+0

残念ながら、OPはこれが[tag:mysql]の質問であることを明らかにしました。 –

関連する問題