2013-12-13 48 views
0

你好我很新的android開發。 我目前有兩張桌子,需要加入這些桌子才能進行PK/FK比賽嗎?你需要連接表在android sqlite中有一個forign鍵/主鍵匹配嗎?

我試圖按照這樣的設計:綠色= PK,橙= FK enter image description here

目前,我有這個代碼,但我不認爲它的權利。

public void onCreate(SQLiteDatabase db) { 
    // SQL statement to create book table 
    String CREATE_PLAYER_TABLE = "CREATE TABLE " + TABLE_PLAYER_INFO + "(" 
      + KEY_PLAYER_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " 
      + KEY_FNAME + " TEXT," 
      + KEY_LNAME + " TEXT," 
      + KEY_POSITION + " TEXT," 
      + KEY_HEIGHT + " TEXT," 
      + KEY_AGE + " TEXT," 
      + KEY_WEIGHT + " TEXT," 
      + KEY_TEAM + " TEXT," 
      + FORIGN_KEY + " TEXT," 
      + " FOREIGN KEY ("+FORIGN_KEY+") REFERENCES " + TABLE_TEAM_INFO + " ("+KEY_TEAM_ID+"))"; 

    String CREATE_TEAM_TABLE = "CREATE TABLE " + TABLE_TEAM_INFO + "(" 
      + KEY_TEAM_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " 
      + KEY_TEAMNAME + " TEXT" + ")"; 

    // create books table 
    db.execSQL(CREATE_PLAYER_TABLE); 
    db.execSQL(CREATE_TEAM_TABLE); 
} 

任何幫助將是巨大的 感謝

回答

0

爲了創建你不需要加入數據庫。這沒有意義,因爲你不能加入一個尚不存在的表。 JOIN僅用於數據讀取。

This將幫助您建立關係。

+0

我知道,但我想有一個與這些表fk/pk匹配,所以我可以查詢他們 –

+0

謝謝!但我有沒有這樣做過? –

+0

我認爲你需要首先創建TEAM_TABLE,因爲你正在引用它的主鍵。 –