我想把SQL數據庫放在一起,但不知道如何使它工作。意圖是有多個列,一些是整數,一些是在單元格中有字符串。對於這個應用程序,我希望重複是一個整數,並鍛鍊成一個字符串。這裏是代碼的相關部分:SQL數據庫類型問題
public static final String KEY_ROWID = "_id";
public static final String KEY_DATE = "date";
public static final String KEY_EXERCISE = "exercise";
public static final String KEY_REPS = "repetitions";
private static final String DATABASE_CREATE = "create table " + DATABASE_TABLE + " ("
+ KEY_ROWID + " integer primary key autoincrement, "
+ KEY_DATE + " text not null, "
+ KEY_EXERCISE + " text not null, "
+ KEY_REPS + " int not null, "
public long createExercise(String exercise, int reps) {
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_DATE, date);
initialValues.put(KEY_EXERCISE, exercise);
initialValues.put(KEY_REPS, reps);
return mDb.insert(DATABASE_TABLE, null, initialValues);
}
我把數據放在這個表中使用測試字符串。然後我嘗試用以下查詢來提取數據:
public Cursor graphQuery(String exercise, String workout) {
return mDb.query(DATABASE_TABLE, new String[] {KEY_DATE, KEY_REPS}, null, null,
null, null, null);
從那裏我嘗試將數據放入數組中,但它給了我一個錯誤。它告訴我在我宣佈它時將KEY_REPS作爲一個數字。但是,如果我將KEY_REPS聲明爲數字,它不會讓我構建數據集。
Cursor cursor = mDbHelper.graphQuery(currentexercise, currentworkout);
startManagingCursor(cursor);
Number[] reps = new Number[]{workoutDbAdapter.KEY_REPS}; //error here
我覺得我缺少如何創建我的數據庫的關鍵部分。誰能幫忙?
從書中我試圖按照代碼(除使用整數)(從第一個答案評論)話雖這麼說,如果有人知道一個很好的網站,教的SQLite的,因爲它適用於Android的
private void fillData() {
Cursor remindersCursor = mDbHelper.fetchAllReminders();
startManagingCursor(remindersCursor);
// Create an array to specify the fields we want (only the TITLE)
String[] from = new String[]{RemindersDbAdapter.KEY_TITLE};
那將是真棒。我唯一能找到的是通用SQL站點,它們並不是非常有用。
對於這一點,你問任何問題:請複製並粘貼錯誤消息的準確* *,因爲他們出現了。簡單地描述錯誤信息並不像粘貼它有用。與代碼類似 - 我不確定是否按照您定義的方式顯示「createExercise」,因爲「date」未定義。 – 2011-06-14 17:11:23