我有一个包含研究参与者联系信息的数据库:homePhone、altPhone 和电子邮件。
我们通过保存一个日志表来检查参与者进出数据库。每次批量签回参与者时,我都会通过我编写的 Java 应用程序运行它,如果需要,它还可以更新/删除联系信息。
当参与者的 3 条联系信息中有 0 条时,将它们保存在数据库中是没有用的。除了在我的 Java 程序中实现检查之外,有没有办法让数据库(在 MySQL 上运行)自动执行此操作?我试图创建一个触发器来检查 UPDATE 上的 3 列,但我在网上看到你不能改变触发器关联的表?
我知道我可以运行:
DELETE FROM participants WHERE homePhone=0 AND altPhone=0 AND email=''
但我希望数据库自动执行此操作。我不是数据库专家,所以如果有人有任何见解,那就太好了。最坏的情况是在我的 Java 程序结束时实现上面的 SQL 行。