Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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 SQLite-插入查询失败_Android_Sqlite_Android Sqlite_Sql Insert - Fatal编程技术网

Android SQLite-插入查询失败

Android SQLite-插入查询失败,android,sqlite,android-sqlite,sql-insert,Android,Sqlite,Android Sqlite,Sql Insert,我正在使用SQLite在应用程序中保存数据。 没有例外,但数据不会插入到表中。 我得到rowId=-1 有人能帮我吗 我对该表的定义是: private static final String SQL_CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + " (" + " RESULETID INTEGER PRIMARY KEY AUTOINCREMENT, " + Constants.COL_1 + " TEXT, " +

我正在使用SQLite在应用程序中保存数据。 没有例外,但数据不会插入到表中。 我得到rowId=-1

有人能帮我吗

我对该表的定义是:

private static final String SQL_CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + " (" +
        " RESULETID INTEGER PRIMARY KEY AUTOINCREMENT, " +
        Constants.COL_1 + " TEXT, " +
        Constants.COL_2 + " TEXT, " +
        Constants.COL_3 + " TEXT, " +
        Constants.COL_4 + " TEXT, " +
        Constants.COL_5 + " TEXT, " +
        Constants.COL_6 + " TEXT)";

@Override
public void onCreate(SQLiteDatabase db) {
    //db.execSQL("CREATE TABLE " + TABLE_NAME + "(ID INTEGER PRIMARY KEY AUTOINCREMENT," + "SCAN_DATE TEXT, ORGAN TEXT, SIDE TEXT, RECOMMENDATION TEXT, CHANGES TEXT)");
    db.execSQL(SQL_CREATE_TABLE);
}
我的插入功能是:

public boolean insertData(String username, String date, String address, String phone, String recommendation, String changes) {
    SQLiteDatabase db  = this.getWritableDatabase();
    ContentValues contentValues= new ContentValues();
    contentValues.put(Constants.COL_1, username);
    contentValues.put(Constants.COL_2, date);
    contentValues.put(Constants.COL_3, address);
    contentValues.put(Constants.COL_4, phone);
    contentValues.put(Constants.COL_5, recommendation);
    contentValues.put(Constants.COL_6, changes);
    long newRowId = db.insert(TABLE_NAME, null, contentValues);
    Log.e("InsertData", Long.toString(newRowId));
    return true;
}

请发布调用
insertData()
的方式以及所传递参数的确切值。似乎您已经更改了DB结构,请尝试阅读我的回答,即使在没有引发
异常的情况下,您仍然会收到包含未插入原因的日志。检查你的日志。另外,为了便于调试,我还建议
insertOrThrow()
您在创建表时没有创建username列。我确实创建了usernamr列。。。正如@Pavneet_Singh所说,我改变了DB结构。Tnx!