android:在sqlite中创建表时出错?
我在android中创建了一个应用程序,用于执行crud操作。在应用程序中,已成功创建数据库文件,但在创建表时出错,下面是Logcat错误和数据库适配器类 Logcat错误 下面是我的数据库适配器类 请任何人帮我解决这个错误android:在sqlite中创建表时出错?,android,sqlite,Android,Sqlite,我在android中创建了一个应用程序,用于执行crud操作。在应用程序中,已成功创建数据库文件,但在创建表时出错,下面是Logcat错误和数据库适配器类 Logcat错误 下面是我的数据库适配器类 请任何人帮我解决这个错误 感谢您您的SQL中两列之间缺少一个逗号: private static final String SQL_CREATE_ENTRIES = "CREATE TABLE " + TABLE_NAME + "(" + TIMERECORDS_COLUMN_I
感谢您您的SQL中两列之间缺少一个逗号:
private static final String SQL_CREATE_ENTRIES = "CREATE TABLE " +
TABLE_NAME + "(" + TIMERECORDS_COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
TIMERECORDS_COLUMN_TIME + " TEXT **,%Comma goes here%** " + TIMERECORDS_COLUMN_NOTE + " TEXT);";
TIMERECORDS\u COLUMN\u TIME+TEXT==TIMERECORDS\u COLUMN\u TIME+TEXT
你忘了,查尔
下次阅读异常并更准确地查看代码。看起来您在创建表DDL中缺少了一个逗号。在TIMERECORDS\u列\u TIME列上 发件人: 到 在这里: 您可以获得时间文本注释文本,但不使用逗号来分隔它们 Sqlite没有将其检测为语法错误:它以非类型化数据库的形式启动,然后添加了对类型关联的支持,但仍然允许对列类型规范进行各种垃圾处理
public class TimeTrackerAdapter {
private static final int DATABASE_VERSION = 4;
private static final String DATABASE_NAME = "timetrackernew1.db";
//Table
private static final String TABLE_NAME = "timerecordsnew1";
//Table Column Variable
public static final String TIMERECORDS_COLUMN_ID = "id";
public static final String TIMERECORDS_COLUMN_TIME = "time";
public static final String TIMERECORDS_COLUMN_NOTE = "note";
private TimeTrackerOpenHelper openHelper;
private SQLiteDatabase sqlDb;
//Database creation sql statement
private static final String SQL_CREATE_ENTRIES = "CREATE TABLE " +
TABLE_NAME + "(" + TIMERECORDS_COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
TIMERECORDS_COLUMN_TIME + " TEXT " + TIMERECORDS_COLUMN_NOTE + " TEXT);";
public TimeTrackerAdapter(Context context) {
openHelper = new TimeTrackerOpenHelper(context);
sqlDb = openHelper.getWritableDatabase();
}
//to insert data into database
public void saveRecords(String t, String n) {
ContentValues contentValues = new ContentValues();
contentValues.put(TIMERECORDS_COLUMN_NOTE,t);
contentValues.put(TIMERECORDS_COLUMN_NOTE, n);
sqlDb.insert(TABLE_NAME, null, contentValues);
}
//get fetch the all data
public Cursor getAllRecords() {
return sqlDb.rawQuery("select * from " + TABLE_NAME, null);
}
// inner class
private class TimeTrackerOpenHelper extends SQLiteOpenHelper {
public TimeTrackerOpenHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
System.out.println("create statement"+SQL_CREATE_ENTRIES);
try
{
db.execSQL(SQL_CREATE_ENTRIES);
}catch(SQLiteException sql)
{
sql.printStackTrace();
}
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
}
}
private static final String SQL_CREATE_ENTRIES = "CREATE TABLE " +
TABLE_NAME + "(" + TIMERECORDS_COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
TIMERECORDS_COLUMN_TIME + " TEXT **,%Comma goes here%** " + TIMERECORDS_COLUMN_NOTE + " TEXT);";
private static final String SQL_CREATE_ENTRIES =
"CREATE TABLE " + TABLE_NAME + "(" +
TIMERECORDS_COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
TIMERECORDS_COLUMN_TIME + " TEXT " +
TIMERECORDS_COLUMN_NOTE + " TEXT);";
private static final String SQL_CREATE_ENTRIES =
"CREATE TABLE " + TABLE_NAME + "(" +
TIMERECORDS_COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
TIMERECORDS_COLUMN_TIME + " TEXT, " +
TIMERECORDS_COLUMN_NOTE + " TEXT);";
TIMERECORDS_COLUMN_TIME + " TEXT " + TIMERECORDS_COLUMN_NOTE + " TEXT);";