我有两张表device_test_results
和devices
。
device_test_results
- id
- device_id (FK)
- brand
- model
- serial_number
devices
- id
- brand
- model
- serial_number
device_test_results
有一个外键 - device_id
引用devices
表
自从我使用此设置以及从device_test_results
到devices
引用的大量数据以来,已经有一段时间了。
我目前正试图摆脱这种依赖关系,因此我在brand
添加了model
serial_number
和device_test_results
列来复制所有现有信息从devices
表中删除此约束,以便这两个表变为独立。
为此寻找解决方案的任何建议或地点?
答案 0 :(得分:1)
你应该尝试下面这样的事情。使用SELECT
查询和JOIN
与其他表一起获取所需数据,然后相应地执行INSERT
操作。
INSERT INTO device_test_results (brand, model, serial_number)
SELECT * FROM
(
SELECT d.brand, d.model, d.serial_number
from devices d
inner join device_test_results dtr on dtr.device_id = d.id
) tab
修改强>
然后使用UPDATE
查询与{/ p>等其他表格进行JOIN
UPDATE device_test_results AS dtr
SET brand = d.brand
model = d.model
serial_number = d.serial_number
FROM devices AS d
WHERE dtr.device_id = d.id;