我有一个主数据库,它在应用程序和用户数据库的开头提供,后者在应用程序的生命周期中创建。主数据库有一些记录,这个数据库无法修改。
用户数据库有一些表,而这些表有一些列引用主数据库表列值,没有任何触发器或任何外键约束。虽然这些列之间没有链接,但如果将来更新主数据库并从主数据库中删除一些记录,我想删除用户数据库中的行,引用主数据库中的行。
现在,如果从主数据库中删除了任何密钥,我该如何在用户数据库中反映它?
选项:
直接发送用户数据库更新master和fire查询时删除的密钥列表 - 缺点是需要跟踪主服务器中删除的密钥。
浏览用户数据库中的所有记录,查找是否有任何列值(外键)无效并删除。
我应该使用上面哪个选项?