制作可执行的Sqlite命令Android

时间:2015-04-02 14:49:11

标签: android sqlite

在学习Sqlite的基础知识时,我继续遇到同样的问题,即理解如何在Android中编写sqlite命令 sqlite命令是这样编写和执行的......

    private static final String DATABASE_CREATE = "create table " 
      + TABLE_TODO
      + "(" 
      + COLUMN_ID + " integer primary key autoincrement, " 
      + COLUMN_CATEGORY + " text not null, " 
      + COLUMN_SUMMARY + " text not null," 
      + COLUMN_DESCRIPTION
      + " text not null" 
      + ");";

  public static void onCreate(SQLiteDatabase database) {
    database.execSQL(DATABASE_CREATE);
  }

但是在sqlite文档中,它们显示的内容类似于enter image description here

图片中的数据似乎与代码中给出的信息有很大不同。

我是否只是错误地阅读了图片,如果是这样,任何人都可以向我解释如何设置这样的命令,或者指向解释如何设置这些命令的资源。

编辑: 1.在存在它有轨道,并说“临时”可以添加到“创建表”,以“创建临时表”。

  1. 最后,“没有rowid”会做什么。它不是在这个命令中,而是它会做什么。

1 个答案:

答案 0 :(得分:2)

  

在存在的情况下,它具有关闭的轨道,并且可以将“temp”添加到“create table”以创建“创建临时表”。

是。

  

此外,代码中的位置是“database-name”(在我的代码TABLE_TODO = todo中,因此没有必要定义数据库名称)。

是的,可以省略。请注意图中database-name.下方的箭头。

  

最后,“没有rowid”会做什么。它不在这个命令中,但如果它是它会做什么。

默认情况下,每个表都有一个隐式ROWID。如果表格中包含INTEGER PRIMARY KEY,那么它会与ROWID混淆。 WITHOUT ROWID是一种优化,因此不会生成隐式ROWID INTEGER PRIMARY KEY列。有关详细信息,请参阅documentation