INSERT INTO SELECT FROM不起作用。甚至没有错误

时间:2013-11-28 07:53:12

标签: sql sqlite insert

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值。首先,我只想添加相同数量的新记录,而不是更新和设置。

3 个答案:

答案 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);