>
Ola Rafael tenho uma classe Banco que funciona normalmente com apenas 1 tabela e ao tentar criar a segunda que no caso aqui é a minha tabela de RACA
o logcat do android me diz que esta tabela nao existe ... o por que disso ? ja tentei criar em arquivos separados e não consegui ,o log me retorna o mesmo erro... PODE ME AJUDAR ?
public class Banco extends SQLiteOpenHelper{
private static String DBname = "tcc.db";
private static String sqlCor = "CREATE TABLE [COR] ([ID] INTEGER PRIMARY KEY AUTOINCREMENT, DESCRICAO VARCHAR(50));";
private static String sqlRaca = "CREATE TABLE [RACA] ([ID] INTEGER PRIMARY KEY AUTOINCREMENT, DESCRICAO VARCHAR(50));";
public static int version = 1;
public Banco(Context ctx) {
super(ctx,DBname,null, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(sqlCor);
db.execSQL(sqlRaca);
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
}
__________________________________________________________________________________________________
ERRO GERADO APÓS A TENTATIVA DE GRAVAR O REGISTRO
07-14 02:48:26.087: D/OpenGLRenderer(7021): Flushing caches (mode 0)
07-14 02:48:28.127: D/ViewRootImpl(7021): pckname = br.com.carhorses
07-14 02:48:30.617: I/SqliteDatabaseCpp(7021): sqlite returned: error code = 1, msg =null no such table: RACA, db=/data/data/br.com.carhorses/databases/tcc.db
07-14 02:48:30.627: E/SQLiteDatabase(7021): Error inserting DESCRICAO=hhhh
07-14 02:48:30.627: E/SQLiteDatabase(7021): android.database.sqlite.SQLiteException: no such table: RACA: , while compiling: INSERT INTO RACA(DESCRICAO) VALUES (?)
Reescreva o método Onupgrade e manda dar um alter table nele... de acordo com a versão do banco .... coloque o version como 2....
Olá
Apaga o .db via shell e tente novamente.
Como Wesley disse, qualquer update no DDL do banco tem que ser no onUpgrade, há não ser que você faça o que eu disse acima.