SQLite
 sql >> Database >  >> RDS >> SQLite

Android:come unire la tabella figlio con la tabella padre Sqlite

puoi utilizzare il nome del college come chiave esterna nella tabella degli studenti assicurati che entrambe le tabelle delle colonne abbiano un nome di colonna diverso, assicurati solo che COLUMN_ID ="id" rispetto a COLUMN_ID ="s_id"

// Database Namepublic static final String DATABASE_NAME ="details.db";

        // Table 1
        public static final String TABLE_NAME = "CollegeName";
        public static final String COLUMN_ID = "c_ID";
        public static final String COLUMN_TITLE = "college_NAME";
        private static final String COLUMN_IMAGE = "image_bitmap";
    
        // Table 2
        private static final String TABLE2_NAME = "studentsName";
        public static final String COLUMN1_ID = "s_ID";
        public static final String COLUMN2_TITLE = "students_NAME";


public void onCreate(SQLiteDatabase sqLiteDatabase) {

        String query =
                "CREATE TABLE IF NOT EXISTS " + TABLE_NAME + "("
                        + COLUMN_ID + " INTEGER PRIMARY KEY  ,"
                         + COLUMN_TITLE + " TEXT, "
                + COLUMN_IMAGE + " BLOB );";

        sqLiteDatabase.execSQL(query);

        String query1 =
                "CREATE TABLE IF NOT EXISTS " + TABLE2_NAME + "("
                        + COLUMN1_ID + " INTEGER PRIMARY KEY ,"
                        + COLUMN2_TITLE + "  TEXT ,"
                        + COLUMN_C_ID + " INTEGER, " + "FOREIGN KEY("+ 
                   COLUMN_C_ID +") " 
     + "REFERENCES " + TABLE_NAME +"("+COLUMN_ID +")"+ ");";


        sqLiteDatabase.execSQL(query1);

    }