获取此错误:android.database.sqlite.SQLiteException:near“”;:语法错误
嘿伙计们我希望你们能帮我 我得到这个错误,但找不到解决问题的方法获取此错误:android.database.sqlite.SQLiteException:near“”;:语法错误,android,database,sqlite,Android,Database,Sqlite,嘿伙计们我希望你们能帮我 我得到这个错误,但找不到解决问题的方法 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sergej.myapplication4/com.sergej.slidnerd_kopie.training.MeinePlaene_main}: android.database.sqlite.SQLiteException: near "SETSworkout": syntax er
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sergej.myapplication4/com.sergej.slidnerd_kopie.training.MeinePlaene_main}: android.database.sqlite.SQLiteException: near "SETSworkout": syntax error (code 1): , while compiling: CREATE SETSworkout(name TEXT)
这就是我的创建表
public class WorkoutDataHelper extends SQLiteOpenHelper {
public static final int DB_VERSION = 2;
public static final String DB_NAME = "dmworkouts.db";
public static final String WORKOUT_TABLE_NAME = "workouts";
public static final String SETS_TABLE_NAME = "workouts";
public static final String SESSIONS_TABLE_NAME = "sessions";
public static final String CREATE_WORKOUT_TABLE = "CREATE TABLE " + WORKOUT_TABLE_NAME +
" ( name TEXT )";
public static final String CREATE_SETS_TABLE ="CREATE SETS"+SETS_TABLE_NAME+"(name TEXT)";
public static final String CREATE_SESSIONS_TABLE = "CREATE TABLE " + SESSIONS_TABLE_NAME +
" ( time INTEGER, workoutid INTEGER, type INTEGER)";
public WorkoutDataHelper(Context context) {
super(context,DB_NAME, null, DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(CREATE_WORKOUT_TABLE);
db.execSQL(CREATE_SETS_TABLE);
db.execSQL(CREATE_SESSIONS_TABLE);
}
}
我认为问题出在
CREATE\u WORKOUT\u TABLE
的某个地方,但我试图解决它,但没有成功。连接字符串时缺少空格:
"CREATE SETS"+SETS_TABLE_NAME+"(name TEXT)"
应该是:
"CREATE SETS "+SETS_TABLE_NAME+"(name TEXT)"
因此出现了给定的错误。您可以在错误消息中看到,单词
SET
没有与表名分开,这使得该语句无效。我不熟悉SETS关键字,在google上也找不到它。它是从哪里来的?你是说桌子吗?