SQLite管理器插入失败,但不产生错误

SQLite管理器插入失败,但不产生错误,sqlite,sqlitemanager,Sqlite,Sqlitemanager,我有一个SQLite DB,它有一个表: table: import_info Columns: First_Name, Last_Name, Payroll_ID, ... other columns not used tabel employees Columns: name, employee_num 我想在employees表中选择第一个表中的唯一名称和payroll_id作为name和employeer_num 如果我在SQLite管理器中选择表并运行: SELECT

我有一个SQLite DB,它有一个表:

table: import_info
   Columns: First_Name, Last_Name, Payroll_ID, ... other columns not used

tabel employees
   Columns: name, employee_num
我想在employees表中选择第一个表中的唯一名称和payroll_id作为name和employeer_num

如果我在SQLite管理器中选择表并运行:

SELECT DISTINCT Last_Name || ' ' || First_Name AS name, Payroll_ID 
AS employee_num 
FROM import_info
我得到了完美的结果。但如果我尝试:

INSERT INTO employees (name, employee_num)
SELECT DISTINCT Last_Name || ' ' || First_Name AS name, Payroll_ID 
AS employee_num 
FROM import_info

我什么也得不到。没有错误,什么也不会发生

您可以提供如下值:

INSERT INTO employees(name, employee_num, created_at, updated_at)
    SELECT DISTINCT Last_Name || ' ' || First_Name AS name, Payroll_ID,
           datetime('now'), datetime('now')
    FROM import_info

但是,我很惊讶,忽略这些值不会导致错误。可能是什么原因抑制了错误。

您是否尝试过从员工中选择*?insert实际上不返回任何内容。是的,它返回employees中的所有列,没有数据,因为该表是空的。import_info表有9000多行,每个员工有多个条目。因此,我认为我可能看到了问题所在。表结构是:CREATE table employees id INTEGER主键AUTOINCREMENT NOT NULL、name varchar、employeen_num INTEGER、created_at datetime NOT NULL、updated_at datetime NOT NULL,因此我不提供created_at或updated_at。知道如何为这两列的每一行提供一个虚拟值吗?谢谢,这太完美了。我在谷歌上搜索语法,但它让我很难理解如何表达它,以便谷歌给出答案。如果我把语法弄乱了,抛出一个错误是没有问题的。奇怪的是,它没有在我概述的案例中抛出一个。