3
public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
        db.execSQL("CREATE TABLE " + DATABASE_TABLE_COURSES + " ("
                + KEY_ROWID + " INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "
                + KEY_COURSE_ID + " TEXT NOT NULL, "
                + KEY_COURSE_TITLE + " TEXT NOT NULL, "
                + KEY_COURSE_CNUMBER + " TEXT NOT NULL, "
                + KEY_COURSE_SUBJECT + " TEXT NOT NULL, " 
                + KEY_COURSE_DAYS + " TEXT NOT NULL, "
                + KEY_COURSE_START_TIME + " TEXT NOT NULL, "
                + KEY_COURSE_END_TIME + " TEXT NOT NULL, "
                + KEY_COURSE_PROFESSOR + " TEXT NOT NULL, "
                + KEY_COURSE_BUILDING + " TEXT NOT NULL, " 
                + KEY_COURSE_ROOM_NUMBER + " TEXT NOT NULL);");

我想检查 course_id 是否已经存在于表中,然后不要再输入。谢谢

4

1 回答 1

4

要检查一个字段是否存在一般:

 Cursor cur1=db.query("database_table_courses", "course_id=id_u_wanttocheck", null, null, null, null, null);
      cur1.moveToLast();
      int count1=cur1.getCount();
      if(count1==0)
      {
          //course id not present

      }
      else
      {
        //course id present
      }


或者,如果您希望course_id在表中不再重复,您可以将其设置为主键并从row_no. 这样您就可以简单地插入一个新行。如果 course_id 已经存在,它不会插入并抛出异常 - SQLException,您可以捕获它并做任何您想做的事情。

于 2012-11-19T01:54:42.150 回答