INSERT INTO kid_progress_Backup (userid)
SELECT id
FROM users1
WHERE id>770
我是新手,但我复制并粘贴然后尝试了我的sqlite表。 id是自动增量因此可能存在问题。我也尝试更改id并使用另一列,但这也不起作用。 错误甚至没有弹出 - 这真的很奇怪。
基本上我有两张桌子。我已将记录添加到第一个,现在我想将nuber的记录添加到另一个表中。密钥的关系是users1.id到kid_progress_Backup.userid。然后我需要根据users1表中的一些值在kid_progress_Backup表中添加/ chabge值。首先,我只想添加相同数量的新记录,而不是更新和设置。
答案 0 :(得分:0)
尝试此SQL查询
SET IDENTITY_INSERT kid_progress_Backup ON
INSERT INTO kid_progress_Backup (userid)
SELECT id
FROM users1
WHERE id>770
SET IDENTITY_INSERT kid_progress_Backup OFF
答案 1 :(得分:0)
您的问题可能会发生,因为 kid_progress_Backup 中有其他一些字段,不能为NULL并且没有默认值
如果您使用SQLite,那么您应该为您的案例使用INSERT OR REPLACE语句。所以,你不需要更新。但是你应该在userid列上定义PRIMARY KEY或UNIQUE INDEX。
答案 2 :(得分:0)
尝试这样的事情:
INSERT INTO kid_progress_Backup(user_id)VALUES(SELECT id FROM users1 WHERE id> 770);