SQLITE - 插入选择不起作用?

时间:2016-12-14 15:37:44

标签: vb.net sqlite

背景

我目前有一个名为Parts_list的表,其结构如下所示:

enter image description here

_id是自动递增所以我总是提供NULL,它可以正常工作。

我正在尝试使用一个相当复杂的SELECT语句来填充此表。我在编写INSERT SELECT语句的语法方面遇到了困难。

我尝试了什么

为了测试,我尝试了这个SQL语句:

INSERT INTO Parts_list VALUES (null, 'My Name',CURRENT_TIMESTAMP, null, null, null, null, null, null, null,null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,null, null, null)

并且插入新行没有任何问题。

问题

然而,当我尝试这样的事情时:

INSERT INTO Parts_list VALUES (null, 'My Name',CURRENT_TIMESTAMP, Part_ID, null, null, null, null, null, null,null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,null, null, null) SELECT Part_ID FROM tracking_vehicles

我在选择一列并尝试插入此列时,没有任何反应。我的语法有问题吗?在我的例子中" Part_ID"是VARCHAR,它匹配要插入的数据类型。任何帮助或指导表示赞赏。

PS我也试过这个:

INSERT INTO Parts_list (null, 'My Name',CURRENT_TIMESTAMP, Part_ID, null, null, null, null, null, null,null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,null, null, null) SELECT Part_ID FROM tracking_vehicles

没有" VALUES"因为我看到许多例子没有使用它,但它不起作用。即使我尝试没有" VALUES"它不起作用,所以我猜我需要它。

1 个答案:

答案 0 :(得分:0)

使用提供的示例here我建议您使用以下语法:

INSERT INTO Parts_list (_id, table_owner, etc) 
SELECT null, 'My Name', etc 
FROM tracking_vehicles

在我开始时列出所有列,然后传递SELECT中的所有值。