【问题标题】:SQLite 'INSERT INTO' Error - Populate new table [duplicate]SQLite'INSERT INTO'错误 - 填充新表[重复]
【发布时间】:2012-06-03 07:16:50
【问题描述】:

我在发布此问题时搜索了提示的帖子,但没有找到类似的帖子,因此如果我错过任何内容,我深表歉意。

这是我的问题。我在 SQLite Administrator 中创建了一个表及其字段,然后我编写了以下查询来填充表:

  USE Contact_Database;

  INSERT into Names (Contact_ID, FirstName, LastName) VALUES
  (1, 'Joana', 'Tavares'),
  (2, 'Patrícia', 'Dias'),
  (3, 'Paulo', 'Costa'),
  (4, 'Marco', 'Almeida'),
  (5, 'Bruno', 'Lindo'),
  (6, 'Manuela', 'Lindo'),
  (7, 'João', 'Lindo'),
  (8, 'Rui', 'Trindade');

结果错误:SQL 错误:“USE”附近:语法错误

我也试过:

  INSERT into Contact_Database.Names

结果错误:SQL错误:靠近“,”:语法错误

我在这里错过了什么?

【问题讨论】:

  • 你不能做多行插入,AFAIK。您需要为每个单独插入。

标签: sqlite syntax-error insert-into


【解决方案1】:

不支持在一个查询中插入多个。

更多信息请参见this question

【讨论】:

  • 谢谢!!它与 UNION SELECT 一起使用!
  • 现在正在发生同样的事情,但创建表时... CREATE TABLE [Names] ( [Contact_ID] INTEGER DEFAULT 'None' NOT NULL PRIMARY KEY AUTOINCREMENT, [FirstName] CHAR(20) DEFAULT ' NULL' NULL, [LastName] CHAR(20) DEFAULT 'NULL' NULL )
【解决方案2】:

我有同样的问题,但我在创建表期间忽略(删除)插入查询时解决了它。

我改变了这个

db.execSQL("INSERT INTO MessageTable VALUES(datetime(),'Pir Fahim',00923359110795','Hello,testing');");

到:

db.execSQL("INSERT INTO CallTable VALUES('"+call_time+"','"+name+"','"+phone_no+"','"+interface_style+"','"+tone+"','"+voice_path+"','"+vibration_mode+"');");        

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多