gpt4 book ai didi

java - 在 Android 上创建 SQLite 数据库时出错(代码 1)

转载 作者:行者123 更新时间:2023-12-01 12:33:41 26 4
gpt4 key购买 nike

我正在尝试创建一个简单的数据库,但收到此错误:

09-09 12:42:14.750: E/AndroidRuntime(6971): 引起原因: android.database.sqlite.SQLiteException: 接近“values”: 语法错误 (代码 1): ,编译时:创建表值(_id整数主键自增,日期文本不为空,screenTime整数不为空);

我尝试查看其他类似的问题,但没有找到解决方案,尽管我怀疑我的创建语句不正确,但我不确定。下面是我的代码。

public class MySQLiteHelper extends SQLiteOpenHelper {

public static final String TABLE_VALUES = "values";
public static final String COLUMN_ID = "_id";
public static final String COLUMN_DATE = "date";
public static final String COLUMN_SCREENTIME = "screenTime";

private static final String DATABASE_NAME = "screenTime.db";
private static final int DATABASE_VERSION = 1;

// Database creation sql statement
private static final String DATABASE_CREATE = "create table " + TABLE_VALUES
+ " ( " + COLUMN_ID + " integer primary key autoincrement, "
+ COLUMN_DATE + " text not null, "
+ COLUMN_SCREENTIME + " integer not null );";

public MySQLiteHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

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

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(MySQLiteHelper.class.getName(),
"Upgrading database from version " + oldVersion + " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS " + TABLE_VALUES);
onCreate(db);
}
}

最佳答案

VALUES 是 keyword .

您可以引用它,但最好使用不同的名称。(注意:“值”几乎没有任何意义;每个表中都有值。)

关于java - 在 Android 上创建 SQLite 数据库时出错(代码 1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25742791/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com