java - 表 Ord 没有名为 _id 的列

标签 java android sqlite

我在 SQlite 中创建了一个名为 Ord 的表,其架构为:

sqlite> .schema
CREATE TABLE Ord (
int _id,
text Name
);

我使用名为 insert_by_id 的函数和代码:

  public void insert_by_id(int id){                             
   ContentValues contentValues = new ContentValues();
   contentValues.put(KEY_ID, id);
db.insert(TABLE_NAME2, null, contentValues);
}

当然:私有(private)静态最终字符串TABLE_NAME2 = "Ord"; 和:公共(public)静态最终字符串KEY_ID =“_id”;

但是当我尝试将它与 onClick 事件一起使用时,我收到错误:

*01-11 02:13:38.622: E/Database(424): android.database.sqlite.SQLiteException: 表 Ord 没有名为 _id: 的列,编译时:INSERT INTO Ord(_id) VALUES(?) ;*

我想按 id 数据插入的部分是这样的:

            plus[i].setOnClickListener(new View.OnClickListener() {
                 public void onClick(View v) {

                     Salad_Num[k]++;
                     mySQLiteAdapter.insert_by_id(Salad_Num[k]);            
                     quant.setText(""+Salad_Num[k]);
                 }
             });

我想没有错字,只要我在这里搜索了类似的答案,他们都在代码中创建数据库,而不是在尝试运行项目之前。

最佳答案

SQL语法错误!您正在尝试创建数据类型为“名称”的列“文本”。检查下面的正确语法,我猜你已经修复了它。

CREATE TABLE Ord (
int _id,
Name text
);

关于java - 表 Ord 没有名为 _id 的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8812607/

相关文章:

java - java中的程序化内存跟踪

java - 如何在jsoup中提取属性

java - 如何使用 echo php 到我的 android fragment

html - 如何开发数据库存储> 5MB的PhoneGap应用程序并在几乎所有平台上分发

python - 如果我不关闭Python SQLite中的数据库连接怎么办

java - Apache 不遵守 If-Modified-Since

java - 从 Eclipse 插件中的文件读取

java - 如何从 Eclipse 插件获取包资源管理器中所选节点的完整路径?

android - 如何仅在开发人员模式下激活功能

android - 如何撤消android SQLite中的删除操作