我刚刚开始使用SQLite并遇到了第一个错误。
我要做的是使用文本文件中的数据在我的数据库中创建一个表,但是我得到了这些错误:
Error: near line 4: no such column: ’Microsoft’
Error: near line 5: no such column: ‘Apple’
Error: near line 6: no such column: ‘Youtube’
Error: near line 7: no such column: ‘Facebook’
我的文本文件看起来像这样,我只是操作了以前创建的表:
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE stockprices (id integer primary key, price text);
INSERT INTO "stockprices" VALUES(22,’Microsoft’);
INSERT INTO "stockprices" VALUES(33,‘Apple’);
INSERT INTO "stockprices" VALUES(55, ‘Youtube’);
INSERT INTO "stockprices" VALUES(44, ‘Facebook’);
COMMIT;
我使用以下命令获得了这些错误:
.read ./Documents/sqlite3Files/stockprices.sql
我的印象是你可以从已经保存过的表中创建一个新表吗?
有关如何正确执行此操作的任何建议将不胜感激。
答案 0 :(得分:1)
您看到的错误是因为您用于字符串值的引用不是sqlite所期望的。您可以尝试使用" (ascii代码34)如下:
CREATE TABLE stockprices (id integer primary key, price text);
INSERT INTO "stockprices" VALUES(22,"Microsoft");
INSERT INTO "stockprices" VALUES(33,"Apple");
INSERT INTO "stockprices" VALUES(55,"Youtube");
INSERT INTO "stockprices" VALUES(44,"Facebook");
答案 1 :(得分:0)
在SQL中,必须使用单个ASCII引号('
)引用字符串。
您的.sql文件包含印刷引号(‘
),可能是因为某些文字处理器试图提供帮助。
将所有‘
替换为'
。
(注意:双引号("
)仅应用于表/列名称。)