java - Android、SQLite...主键插入为空

标签 java android sql android-sqlite

我是 android 初学者,正在尝试创建数据库。一张表三个功能添加、删除、更新、检索。

当我将一个项目插入数据库时​​,主键将被赋予一个每次递增的数字..但它被插入到数据库中为空!

因此我无法更新和删除记录,因为我需要 ID。 对于检索,输出工作正常,除了 id 为空之外。

这是架构

private static final int DATABASE_VERSION = 2;
private static final String DATABASE_NAME= "alarmapp"; 
private static final String CREATE_alarm= "CREATE TABLE alarm" +
        " (Aid integer  PRIMARY KEY NOT NULL AUTOINCREMENT," +
        "message varchar(100)," +
        "date varchar(100));";

这是插入代码:

// columns 
private static final String AI = "Aid";
private static final String Message= "message";
private static final String Date = "date";

// tables
private static final String TABLE_NAME= "alarm";

private Context context;
private DatabaseHelper dbhelper;
private SQLiteDatabase database;

public long add( String message, String date) {
    ContentValues values= new ContentValues();

    values.put(Message,message);
    values.put(Date, date);

    return database.insert(TABLE_NAME, null,values);
}

最佳答案

关于java - Android、SQLite...主键插入为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14798718/

相关文章:

java - PayPal-Java-SDK 和 Google App Engine - 订阅反射错误

android - 如何从 Edittext 中检索多行文本?

android - 打开 Instagram 用户资料

sql - 存储过程: Variable table names

SQL:我可以否定 where 子句中的条件吗?

java - Keycloak getAccessToken 在 Java Eclipse/Maven 项目中工作,但通过命令行运行时抛出ProcessingException

java - 独特的字符串 ID 生成算法

java - 尝试将 JDBC 与 Eclipse : Unsupported major. 次要版本 51.0 一起使用

android - 如何在 flutter 中制作音频修剪小部件和声音波形图

php - 使用 SQL 检查预约时间是否适合用户工作时间 - 夜间建议错误