MySQL - 在复制表的每周更新触发器上

MySQL - On weekly update trigger that copies tables

我有 6 个数据库 table,它们共同呈现项目,并且流程被分配给每个项目。用户也被分配给每个进程。这是 tables:

User
Project
Process
Proc_leader
Proc_checker
Proc_staff

我想要的是每个星期天制作系统副本并将复制的 table 存储在数据库中。某种触发器会在每个星期天复制所有数据,然后允许用户根据日期查看保存的记录。例如:

我有 1 个项目和 1 个过程。并分配了 3 个用户作为流程负责人、流程检查员和流程人员。

到了星期日系统应该复制 tables 并创建名称为

的复制的 tables
User06/11/16
Project06/11/16
Process06/11/16
Proc_leader06/11/16
Proc_checker06/11/16
Proc_staff06/11/16

或者类似这样的东西。然后用户应该能够按下 View History 按钮,系统将显示如下内容:

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

它应该显示来自 table 的数据。

我在 sql 方面经验不足,没有足够的知识将其付诸实践。所以我正在寻求任何帮助。任何想法我怎样才能实现这一目标?谢谢

触发器在这方面帮不了你,你需要的是SQL Agent Job

您需要为每个星期天安排作业。

在此之前,创建查询以将您的 table 复制到新的 table,如下所示

select * into NewTable from ExistingTable

由于您要求新的 table 名称是动态的,即带有日期,您可能需要创建 dynamic sql.

你必须写一个 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 作业。