有没有办法在MySQL中创建新表时自动创建触发器?有没有办法在MySQL中创建新表时自动创建触发器?
回答
正如我在your other question中指出的那样,我认为这里是一个流程和安全审查。这是一个经过审计的数据库,因此没有人(,特别是第三方服务提供商)应该在您的数据库中创建表,而不需要您的知识。
你得到的问题是,以及正在创建的新表,您还需要创建另一个表来存储审计/更改的记录,它将与原始表具有相同的结构时间/日期和用户列。如果第三方提供商正在创建此表,他们将不知道创建审计表,因此即使您可以动态生成触发器,它们也不会起作用。
创建单个表将不可能创建一个表,该表将保存数据库中所有其他表的所有更改记录,因为表之间的结构不可避免地会有所不同。
因此:对所有更改请求(例如,提供者想要创建TableX,他们向自己和/或您的团队提交更改请求(包括解释更改原因的SQL脚本)。
您在数据库的测试副本上执行SQL,并使用相同的结构来创建另一个表来存放修改的记录。
然后,您创建并测试必要的触发器,生成一个新的SQL脚本以创建两个表格和触发器,并在您的实时数据库上执行该触发器。你给你的提供者使用新表的权限,然后他们去。
大家都很开心。是的,这可能需要一些时间,是的,你会有更多的工作要做,但这比尝试解析查询日志以重新创建已经被更改的记录所需的工作少得多。删除或解析二进制日志并随时更新每次更改,并在日志文件格式发生变化时修改代码等。
phewwwww !!! korrrrect :-) – 2010-03-26 12:04:57
- 1. 在Mysql中没有创建触发器
- 2. SQL Server 2008:有没有办法创建这样的触发器?
- 3. SQL Server 2012.触发器。如何在创建表时自动创建触发器
- 4. 在创建触发器时触发现有表上的MySQL触发器
- 5. 有没有办法在同一个表上创建多个DELETE触发器?
- 6. 有没有办法在mysql数据库中创建链接表?
- 7. mySql没有即时创建新表
- 8. 有没有办法在SSRS 2008中自动创建订阅?
- 9. DBUnit有没有办法自动创建表?
- 10. 有没有办法显示表格更新/创建时间?
- 11. 有没有办法在一个脚本中创建多个触发器?
- 12. 创建触发器只在创建新表时运行
- 13. 有没有办法创建一个触发器来更新mysql中已经存在的视图?
- 14. 在MySQL中创建触发器时,FOR EACH ROW有没有其他选择?
- 15. 无法在mysql上创建触发器
- 16. 有没有办法在开始时创建JToolBar(浮动)?
- 17. 有没有办法在PHP中从流中重新创建PDF?
- 18. 有没有办法在python上创建时间表?
- 19. MySQL触发器创建定时器
- 20. 有没有办法在SQL Server中创建自己的@@变量?
- 21. 有没有办法在flask wtforms中创建自定义Field/CancelField?
- 22. 有没有办法在Kivy中创建自定义属性?
- 23. 有没有办法在android中创建自定义应答机?
- 24. 有没有办法改变自动创建的默认“ID”列?
- 25. 有没有办法自动创建Google应用程序脚本?
- 26. 有没有办法从ios项目自动创建UML图?
- 27. 有没有办法用AngularJS创建自定义动画事件
- 28. 有没有办法禁用'iOS Team Provisioning Profile:*'自动创建?
- 29. 创建触发器Mysql
- 30. 创建MySQL触发器
您通常不应该动态创建新表。表结构应该是静态的。你想做什么? – 2010-03-26 10:41:04
你是在创建表而不是添加行? – 2010-03-26 10:45:35
我正在为审计试验准备脚本,在这种情况下,我正在处理这种情况:如果创建了新表,该怎么办?在这种情况下,我将无法使用所需的表触发器来跟踪数据更改。因此,如果我可以创建触发器,如查找新表创建...请帮助我解决此问题.. – 2010-03-26 10:46:34