android sqlite中在同一個數據庫中建兩個表的問題

當sqlite中創建兩個表,如photo和text

  sql1 = "create table IF NOT EXISTS photo_text(_id integer primary key  autoincrement ,"
    + "photo varchar(255)," + "text varchar(255));";
  db.execSQL(sql1);
  sql2 = "create table IF NOT EXISTS text(_id integer primary key  autoincrement ,"
    + "text_id varchar(255) ," + "text varchar(255));";
  db.execSQL(sql2);

這樣是正確的

 

  sql1 = "create table IF NOT EXISTS photo_text( "photo varchar(255) primary key," + "text varchar(255));";
  db.execSQL(sql1);
  sql2 = "create table IF NOT EXISTS text( "id varchar(255) primary key ," + "text varchar(255));";
  db.execSQL(sql2);

我之前大概就是是這麼寫的,出錯了,查了資料神馬的,知道數據庫本身有個id並且會自動增加,

可是我的第一個表可以用,但是第二個表只能用一次,應該是第二次插入數據的話第二個表

(text表)認爲插入id會重複,嗯,它吧我這個id當他自己的了,並且我也沒設定成自動增加

神馬的,所以它不會自增。然後我就改成上面那個正確的形式了,但是Log cat又提示我說

依然是前面的錯誤,所以我認爲應該是原先的數據庫中text表已經存在,所以沒執行創建表的

語句,然後我在adb指令和sqlite指令下刪除了text表,然後運行。。。問題就來了,表竟然不

自動創建,提示的錯誤時:no such table “text”。。。我很震驚,然後擺弄了一下,把數據庫

全刪了,嗯,我的是mydb.db。。。。。然後再執行,成功了!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章