mysql - 在一对多关系中维护一致的数据

标签 mysql

我的数据库中有很多这样的例子。下面是一个简单的示例,您或许可以提供帮助。

我有一个图像表

图片来源
街号
街道名称
zip

国家
camera_used
标题
描述
拍摄日期_时间_ 用户ID

我的问题是防止添加重复数据,例如相机可能是多个图像的同一相机我认为最好将表格分开。

但是,如果用户随后更新 camera_used 表中的相机,则每条记录中的 id 将对应于所有图像中更新的相机。地址情况相同。

如果这个实例是最好在更新之前执行检查以查看是否有任何其他表引用该 id,如果是,则创建一个插入,如果不更新记录。

情况是一个用户更新了相机,另一个用户认为那不是我的相机更新了记录,然后返回我们继续。只是不确定这是否是一对多的最佳方式。

目前图像表enter image description here

最佳答案

不允许用户更新camera 表,至少不能直接更新。

他们可以做的是更新用于他们特定图像的相机,这可以在 camera 中找到正确的条目或创建一个新的条目。您根本不想让他们直接更改camera 表,否则它会更改所有 图像的camera,因为您指出。

关于mysql - 在一对多关系中维护一致的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12097899/

相关文章:

PHP 文件不会从 Cron 运行

c# - 如何使用 C# 启动数据库事务,在 MySQL 上运行多个查询然后提交或回滚?

mysql - 从带有外键的表中删除

MySQL 多主复制多位置

mysql - 从 MySQL 中多个表的 max 列获取关联数据

mysql - 如何选择在什么属性上创建什么外键?

php - 在一个查询中对不同表进行多次插入

php - 如何修改 PHP SQL SELECT 查询以根据是否找到数据来显示消息

java - Spring Data JPA - 不带参数的查询

mysql - 使用 mysqldump 选择性地转储数据