sqlite脚本没有从命令行执行

时间:2016-10-13 12:51:44

标签: sqlite

我已经为我的问题Execute SQLite script引用了以下链接,但它似乎没有帮助我的经验。

我是sqlite的新手,目前正尝试使用.read FILENAME函数从命令行执行create table脚本。我的代码如下:

PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE MovieList (ID   VARCHAR(255) PRIMARY KEY,
 Title    VARCHAR(255),
 Studio   VARCHAR(255)            ,
 Released   VARCHAR(255)        ,
 Status   VARCHAR(30)             ,
 Sound    VARCHAR(30)             ,
 Versions   VARCHAR(10)         ,
 Price   VARCHAR(15)         ,
 Rating   VARCHAR(15)             ,
 Movie_Year   VARCHAR(5)      ,
 Genre  VARCHAR(30)         ,
 Aspect   VARCHAR(15)             ,
 UPC   VARCHAR(255)             ,
 Release_Date   VARCHAR(255)                ,
 Last_Updated   VARCHAR(255)                 
);
COMMIT;

我得到的错误是Error: incomplete SQL: ??P,我不太确定如何解决这个问题。另一种方法是创建表并导出.dump文件 - 它具有与上面相同的逻辑。有什么我可能会失踪吗?

1 个答案:

答案 0 :(得分:0)

您的SQL是正确的,我已将您的脚本存储到script.sql并运行:

sqlite3.exe my.db

sqlite> .read script.sql
sqlite> .exit

正确创建所需结构的Db。 SQLite版本3.14.2

通常Error: incomplete SQL:会显示有错误的陈述。 ??P表示文件开头有问题。在Notepad ++中打开它,View -> Show Symbol -> Show All Characters并检查那里有什么问题。