Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在表中创建行_Android_Android Sqlite - Fatal编程技术网

Android 在表中创建行

Android 在表中创建行,android,android-sqlite,Android,Android Sqlite,我正在尝试添加一个表行。但它没有添加。我签入了ddms @Override public Uri insert(Uri uri, ContentValues values) { long rowID = db.insert(TABLE_NAME, "", values); if (rowID > 0) { Uri _uri = ContentUris.withAppendedId(CONTENT_URI, rowID);

我正在尝试添加一个表行。但它没有添加。我签入了ddms

@Override
    public Uri insert(Uri uri, ContentValues values) {
        long rowID = db.insert(TABLE_NAME, "", values);
        if (rowID > 0) {
            Uri _uri = ContentUris.withAppendedId(CONTENT_URI, rowID);
            getContext().getContentResolver().notifyChange(_uri, null);
            return _uri;
        }
        throw new SQLException("Failed to add a record into " + uri);
    }


static final int DATABASE_VERSION = 1;
static final String CREATE_DB_TABLE = " CREATE TABLE " + TABLE_NAME+ "("
            + id +"INTEGER PRIMARY KEY AUTOINCREMENT,"
            + name + "TEXT NOT NULL,"
            + trackNumber +"VARCHAR not null )";

我已将trackNumber添加到数据库表中。它未添加。我已签入ddms。任何人都可以帮我完成此操作。

您忘记了空格

这:

应该是

static final String CREATE_DB_TABLE = " CREATE TABLE " + TABLE_NAME+ "("
        + id +" INTEGER PRIMARY KEY AUTOINCREMENT,"
        + name + " TEXT NOT NULL,"
        + trackNumber +" VARCHAR not null )";
[编辑]

由于已创建表(字段名和类型错误),因此需要重新创建表

为此,请将常量数据库\u VERSION的值增加到2,然后重新运行代码。

这样,onUpgrade()方法将启动,因此删除并重新创建表。

插入查询在哪里?现在将常量数据库版本的值增加到2,然后重试。这样,
onUpgrade()
方法将启动,因此删除并重新创建您的表。是的,它已成功添加。非常感谢。您能解释一下原因吗?
onUpgrade()
仅当数据库版本值大于以前使用的版本值时,方法才会激发。我必须添加8个值,然后每次更改3、4或5都可以更改数据库版本,依此类推?否!!仅当您更改数据库结构时。当您修改表内容时不会。否则,每次都会销毁并重新创建表。内容也会丢失。
static final String CREATE_DB_TABLE = " CREATE TABLE " + TABLE_NAME+ "("
        + id +" INTEGER PRIMARY KEY AUTOINCREMENT,"
        + name + " TEXT NOT NULL,"
        + trackNumber +" VARCHAR not null )";