我正在尝试在SQLite(最新版本)表中插入多行,但抛出错误
从这里得到的想法,这是我的SQL查询:
INSERT INTO "Track"
SELECT "Leonard Collections" AS "Album",
"Instrumental" AS "Artist",
"00:02:59.3800000" AS "Duration",
"1/1/0001 12:00:00 AM" AS "ReleasedDate",
"If You Love Me" AS "Title",
"False" AS "IsPlayableOnLocal"
UNION
SELECT "Leonard Collections",
"Instrumental",
"00:02:56.6930000",
"1/1/0001 12:00:00 AM",
"Espoir",
"False",
UNION
SELECT "Leonard Collections",
"Instrumental",
"00:03:51.6770000",
"1/1/0001 12:00:00 AM",
"Don't Cry For My Argentina",
"False"
但它抛出
SQL logic error or missing database
near "UNION": syntax error
这是我的表结构
CREATE TABLE Track
(
ID INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL ,
Album VARCHAR(100) NULL ,
Artist VARCHAR(255) NOT NULL DEFAULT "Artist Unknown",
Duration VARCHAR(255) NOT NULL ,
LocalPath VARCHAR(255) NULL ,
ReleasedDate DATE NOT NULL ,
Title VARCHAR(255) NULL ,
IsPlayableOnLocal INTEGER NOT NULL ,
Rating VARCHAR(255) NULL
)
我的查询有问题吗?
任何帮助,将不胜感激。
TIA
由于提到了最新版本的SQLite,因此应使用多值插入(自3.7.11版以来受SQLite支持),如下所示:
INSERT INTO mytable (col1, col2, col3) VALUES
(1, 2, "abc"),
(2, 4, "xyz"),
(3, 5, "aaa"),
(4, 7, "bbb");
这是更短,更快,更不容易出错的方法。其他一些数据库(至少MySQL和PostgreSQL)也支持此语法。
问题内容: 在MySQL中,我会使用 但这会导致SQLite错误。SQLite的正确语法是什么? 问题答案: 在此之前,已经回答了这一问题:是否可以一次在SQLite数据库中插入多行? 要回答您对OMG Ponies的评论,请回答: 从3.7.11版本开始,SQLite确实支持多行插入。理查德·希普(Richard Hipp)评论:
问题内容: 我从网络以以下格式下载了800条语句: 我听说过事务,s和使用,但是我不知道哪种情况更适合这种情况。 截断后将它们插入sqlite数据库的最佳方法是什么? 问题答案: 如果要运行多个查询,则为了提高数据完整性和性能,应该使用事务。这是一个代码,可让您了解如何执行此操作:
问题内容: 我有一个列的表。现在,我需要在和列之间添加一个新列。如何在两列之间添加新列? 问题答案: 您有两个选择。首先,您可以简单地添加带有以下内容的新列: 其次,更复杂的是,实际上会将列放在所需的位置,这将是重命名表: 然后使用缺少的列创建新表: 并用旧数据填充它: 然后删除旧表: 我更喜欢第二个选项,因为它可以让您在需要时完全重命名所有内容。
问题内容: 在MySQL中,您可以像这样插入多行: 但是,尝试执行此类操作时出现错误。是否可以一次在SQLite数据库中插入多行?这样做的语法是什么? 问题答案: 更新 正如BrianCampbell在此处指出的那样,SQLite 3.7.11及更高版本现在支持原始文章的更简单语法 。但是,如果您希望在旧数据库之间实现最大兼容性,则所示的方法仍然适用。 原始答案 如果有特权,River的回答:您可
我试图在我的表中插入一条新记录 DSLContext类型中的方法newRecord(Table, Object)不适用于参数(String, ModelBook) 但是和这个一样:http://www.jooq.org/doc/2.5/manual/sql-execution/fetching/pojos/ 所以我不能做:
问题内容: 这个问题的答案是 社区的努力。编辑现有答案以改善此职位。它目前不接受新的答案或互动。 如果一次插入多行,数据库查询会更快吗: 喜欢 (我需要插入2-3000行) 问题答案: 使用语法的语句可以插入多行。为此,请包括多个列值列表,每个列值括在括号内并用逗号分隔。 例: 资源