codice:
private void createVideoGamePlatformTable(SQLiteDatabase db) { db.execSQL("create table " + TABEL_VIDEOGAME_PLATFORM + "(" +
COL_VIDEOGAME_PLATFORM_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," +
COL_VIDEOGAME_PLATFORM_VIDEOGAME_ID + " INTEGER NOT NULL," +
COL_VIDEOGAME_PLATFORM_CONSOLE_ID + " INTEGER NOT NULL," +
"FOREIGN KEY( " + COL_VIDEOGAME_PLATFORM_VIDEOGAME_ID + " ) REFERENCES " + TABEL_VIDEOGAME + " (" + COL_VIDEOGAME_ID + " )" +
"FOREIGN KEY( " + COL_VIDEOGAME_PLATFORM_CONSOLE_ID + " ) REFERENCES " + TABEL_CONSOLE + " (" + COL_CONSOLE_ID + " )" +
");");
db.execSQL("INSERT INTO " + TABEL_VIDEOGAME_PLATFORM + "(" +
COL_VIDEOGAME_PLATFORM_VIDEOGAME_ID + "," +
COL_VIDEOGAME_PLATFORM_CONSOLE_ID + ")" +
"VALUES " +
"('1', '1')," +
"('1', '3')," +
"('1', '8')," +
"('2', '1')," +
"('2', '3')," +
"('2', '8')," +
"('3', '3')," +
"('4', '7')," +
"('5', '10')," +
"('6', '1')," +
"('6', '3')," +
"('6', '8');"
);
}
private void createGenreTable(SQLiteDatabase db) {
db.execSQL("create table " + TABEL_GENRE + "(" +
COL_GENRE_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," +
COL_GENRE_NAME + " TEXT(40) NOT NULL" +
");");
db.execSQL("INSERT INTO " + TABEL_GENRE + "(" +
COL_GENRE_NAME + ")" +
"VALUES " +
"('GDR'), " +
"('FPS'), " +
"('TPS'), " +
"('Platform')" +
";"
);
}
private void createVideoGameTable(SQLiteDatabase db) {
db.execSQL("create table " + TABEL_VIDEOGAME + "(" +
COL_VIDEOGAME_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," +
COL_VIDEOGAME_NAME + " TEXT(40) NOT NULL," +
COL_VIDEOGAME_GENRE + " INTEGER," +
COL_VIDEOGAME_DEVELOPER + " TEXT(25)," +
COL_VIDEOGAME_PRODUCER + " TEXT(25)," +
COL_VIDEOGAME_PUBLICATION + " TEXT(15)," +
COL_VIDEOGAME_ADDED + " INTEGER," +
"FOREIGN KEY( " + COL_VIDEOGAME_GENRE + " ) REFERENCES " + TABEL_GENRE + " (" + COL_GENRE_ID + " )" +
");");
db.execSQL("INSERT INTO " + TABEL_VIDEOGAME + " (" +
COL_VIDEOGAME_NAME + "," +
COL_VIDEOGAME_GENRE + "," +
COL_VIDEOGAME_DEVELOPER + "," +
COL_VIDEOGAME_PRODUCER + "," +
COL_VIDEOGAME_PUBLICATION + ","+
COL_CONSOLE_ADDED + ")" +
"VALUES " +
"('Mass Effect', '1', 'BioWare', 'Eletronic Arts ','2007', '0')," + //1
"('Mass Effect 2', '1', 'BioWare', 'Eletronic Arts ','2011', '0')," + //2
"('Uncharted 3', '3', 'NaugtyDog', 'Sony ','2012', '0')," + //3
"('Halo 5', '2', 'Bungie', 'Microsoft','2015', '0')," + //4
"('Mario', '4', 'Nintendo', 'Nintendo ','2015', '0')," + //5
"('Mass Effect 3', '1', 'BioWare', 'Eletronic Arts ','2013', '0')" + //6
";"
);
}
private void createConsoleTable(SQLiteDatabase db) {
db.execSQL("create table " + TABEL_CONSOLE + "( " +
COL_CONSOLE_ID + " INTEGER PRIMARY KEY AUTOINCREMENT," +
COL_CONSOLE_NAME + " TEXT(40) NOT NULL," +
COL_CONSOLE_PRODUCER + " TEX(40)," +
COL_CONSOLE_GENERATION + " TEXT(15)," +
COL_CONSOLE_TYPE + " TEXT(15)," +
COL_CONSOLE_PUBLICATION + " TEXT(15)," +
COL_CONSOLE_ADDED + " INTEGER" +
");");
db.execSQL("INSERT INTO " + TABEL_CONSOLE + " ( " +
COL_CONSOLE_NAME + "," +
COL_CONSOLE_PRODUCER + "," +
COL_CONSOLE_GENERATION + "," +
COL_CONSOLE_TYPE + "," +
COL_CONSOLE_PUBLICATION + "," +
COL_CONSOLE_ADDED + ")" +
"VALUES ('PC', ' ', ' ', ' ', ' ', '0')," + //1
"('Playstation 4', 'Sony', 'Octave', 'Home', ' ', '0')," + //2
"('Playstation 3', 'Sony', 'Seventh', 'Home', ' ', '0')," + //3
"('Playstation 2', 'Sony', 'Sixth', 'Home', ' ', '0')," + //4
"('Playstation 1', 'Sony', 'fifth', 'Home', ' ', '0')," + //5
"('Playstation Vita', 'Sony', 'Octave', 'Home', ' ', '0')," + //6
"('XboxOne', 'Microsoft', 'Octave', 'Home', ' ', '0')," + //7
"('Xbox 360', 'Microsoft', 'Seventh', 'Home', ' ', '0')," + //8
"('WiiU', 'Nintendo', 'Octave', 'Home', ' ', '0')," + //9
"('Wii', 'Nintendo', 'Seventh', 'Home', ' ', '0')," + //10
"('Playstation Portable', 'Sony', 'Seventh', 'Home', ' ', '0')" + //11
";"
);
}
2: Ho testato singolarmente le query, e funzionano.