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 作业。
我有 6 个数据库 table,它们共同呈现项目,并且流程被分配给每个项目。用户也被分配给每个进程。这是 tables:
User
Project
Process
Proc_leader
Proc_checker
Proc_staff
我想要的是每个星期天制作系统副本并将复制的 table 存储在数据库中。某种触发器会在每个星期天复制所有数据,然后允许用户根据日期查看保存的记录。例如:
我有 1 个项目和 1 个过程。并分配了 3 个用户作为流程负责人、流程检查员和流程人员。
到了星期日系统应该复制 tables 并创建名称为
的复制的 tablesUser06/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 作业。