public class BDadapter {
// TABELA AGENDA
public static final String TABELA_AGENDA = "agenda";
public static final String COLUNA_ID_AGENDA = "_id";
public static final String COLUNA_TITULO_AGENDA = "titulo";
public static final String COLUNA_HORA_INICIAL_AGENDA = "hora_inicial";
public static final String COLUNA_MINUTO_INICIAL_AGENDA = "minuto_inicial";
public static final String COLUNA_HORA_FINAL_AGENDA = "hora_final";
public static final String COLUNA_MINUTO_FINAL_AGENDA = "minuto_final";
public static final String COLUNA_VOLUME_AGENDA = "volume";
public static final String COLUNA_STATUS_AGENDA = "status";
public static final String COLUNA_RETORNO_SMS_AGENDA = "retorno_sms";
public static final String COLUNA_ID_SMS_AGENDA = "id_sms";
// ANTIGA TABELA REPETIR
public static final String COLUNA_SEGUNDA_REPETIR = "segunda";
public static final String COLUNA_TERCA_REPETIR = "terca";
public static final String COLUNA_QUARTA_REPETIR = "quarta";
public static final String COLUNA_QUINTA_REPETIR = "quinta";
public static final String COLUNA_SEXTA_REPETIR = "sexta";
public static final String COLUNA_SABADO_REPETIR = "sabado";
public static final String COLUNA_DOMINGO_REPETIR = "domingo";
// TABELA LISTA DE EXCEÇÕES
public static final String TABELA_EXCECOES = "excecoes";
public static final String COLUNA_ID_EXCECOES = "_id";
public static final String COLUNA_CONTATO_EXCECOES = "contato";
public static final String COLUNA_STATUS_EXCECOES = "status";
public static final String COLUNA_ID_CATEGORIA_EXCECOES = "id_categoria";
// TABELA CATEGORIA (EXCECOES)
public static final String TABELA_CATEGORIA = "categoria";
public static final String COLUNA_ID_CATEGORIA = "_id";
public static final String COLUNA_DESCRICAO_CATEGORIA = "descricao";
// TABELA SMS - RETORNO SMS
public static final String TABELA_SMS = "sms";
public static final String COLUNA_ID_SMS = "_id";
public static final String COLUNA_DESCRICAO_SMS = "descricao";
public static final String COLUNA_TEXTO_SMS = "texto";
public static final String COLUNA_ID_DESTINO_SMS = "destino";
// SQL PARA CRIAR TABELAS
private static final String CATEGORIA_CREATE_TABLE = "CREATE TABLE "
+ TABELA_CATEGORIA + "("
+ COLUNA_ID_CATEGORIA + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ COLUNA_DESCRICAO_CATEGORIA + " TEXT);";
private static final String SMS_CREATE_TABLE = "CREATE TABLE "
+ TABELA_SMS + "("
+ COLUNA_ID_SMS + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ COLUNA_DESCRICAO_SMS + " TEXT, "
+ COLUNA_TEXTO_SMS + " TEXT ,"
+ COLUNA_ID_DESTINO_SMS + " INTEGER, "
+ " FOREIGN KEY ( " + COLUNA_ID_DESTINO_SMS + " ) REFERENCES " + TABELA_CATEGORIA + " (" + COLUNA_ID_CATEGORIA
+ " ) ON DELETE RESTRICT ON UPDATE CASCADE);";
private static final String EXCECOES_CREATE_TABLE = "CREATE TABLE "
+ TABELA_EXCECOES + "("
+ COLUNA_ID_EXCECOES + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ COLUNA_CONTATO_EXCECOES + " INTEGER,"
+ COLUNA_ID_CATEGORIA_EXCECOES + " INTEGER,"
+ COLUNA_STATUS_EXCECOES + " BOOLEAN,"
+ " FOREIGN KEY ( " + COLUNA_ID_CATEGORIA_EXCECOES + " ) REFERENCES " + TABELA_CATEGORIA + " (" + COLUNA_ID_CATEGORIA
+ " ) ON DELETE RESTRICT ON UPDATE CASCADE);";
private static final String AGENDA_CREATE_TABLE = "CREATE TABLE "
+ TABELA_AGENDA + "("
+ COLUNA_ID_AGENDA + " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ COLUNA_TITULO_AGENDA + " TEXT,"
+ COLUNA_HORA_INICIAL_AGENDA + " INTEGER,"
+ COLUNA_MINUTO_INICIAL_AGENDA + " INTEGER,"
+ COLUNA_HORA_FINAL_AGENDA + " INTEGER,"
+ COLUNA_MINUTO_FINAL_AGENDA + " INTEGER,"
+ COLUNA_VOLUME_AGENDA + " INTEGER ,"
+ COLUNA_RETORNO_SMS_AGENDA + " BOOLEAN ,"
+ COLUNA_STATUS_AGENDA + " BOOLEAN ,"
+ COLUNA_SEGUNDA_REPETIR + " BOOLEAN ,"
+ COLUNA_TERCA_REPETIR + " BOOLEAN ,"
+ COLUNA_QUARTA_REPETIR + " BOOLEAN ,"
+ COLUNA_QUINTA_REPETIR + " BOOLEAN ,"
+ COLUNA_SEXTA_REPETIR + " BOOLEAN ,"
+ COLUNA_SABADO_REPETIR + " BOOLEAN ,"
+ COLUNA_DOMINGO_REPETIR + " BOOLEAN ,"
+ COLUNA_ID_SMS_AGENDA + " INTEGER,"
+ " FOREIGN KEY ( " + COLUNA_ID_SMS_AGENDA + " ) REFERENCES " + TABELA_SMS + " (" + COLUNA_ID_SMS
+ " ) ON DELETE RESTRICT ON UPDATE CASCADE);";
private DatabaseHelper mDbHelper;
private SQLiteDatabase mDb;
private static final String BD_NOME = "bd";
private static final int BD_VERSAO = 1;
private final Context contexto;
private static class DatabaseHelper extends SQLiteOpenHelper{
public DatabaseHelper(Context context) {
super(context, BD_NOME, null, BD_VERSAO);
// TODO Auto-generated constructor stub
}
@Override
public void onOpen(SQLiteDatabase db) {
// TODO Auto-generated method stub
super.onOpen(db);
if (!db.isReadOnly())
{
db.execSQL("PRAGMA foreign_keys=ON;");
}
}
@Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(CATEGORIA_CREATE_TABLE);
db.execSQL(EXCECOES_CREATE_TABLE);
db.execSQL(SMS_CREATE_TABLE);
db.execSQL(AGENDA_CREATE_TABLE);
Log.i("BANCO DE DADOS", "BANCO CRIADO COM SUCESSO!");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
Log.i("BANCO DE DADOS", "Atualizando o banco de dados da versão " + oldVersion+ " para " + newVersion);
db.execSQL("DROP TABLE IF EXISTS " + TABELA_CATEGORIA);
db.execSQL("DROP TABLE IF EXISTS " + TABELA_EXCECOES);
db.execSQL("DROP TABLE IF EXISTS " + TABELA_SMS);
db.execSQL("DROP TABLE IF EXISTS " + TABELA_AGENDA);
onCreate(db);
}
}
public BDadapter(Context ctx) {
this.contexto = ctx;
}
public BDadapter open() throws SQLException {
mDbHelper = new DatabaseHelper(contexto);
mDb = mDbHelper.getWritableDatabase();
return this;
}
public void close() {
mDbHelper.close();
mDb.close();
}
// METODOS P/ INSERIR NO BD
public long inserirAgenda(String titulo, int hinicial, int minicial, int hfinal, int mfinal, int valor_volume, boolean sms, boolean[] repetir, int id_sms,boolean status){
ContentValues values= new ContentValues();
values.put(COLUNA_TITULO_AGENDA, titulo);
values.put(COLUNA_HORA_INICIAL_AGENDA, hinicial);
values.put(COLUNA_MINUTO_INICIAL_AGENDA, minicial);
values.put(COLUNA_HORA_FINAL_AGENDA, hfinal);
values.put(COLUNA_MINUTO_FINAL_AGENDA, mfinal);
values.put(COLUNA_VOLUME_AGENDA, valor_volume);
values.put(COLUNA_RETORNO_SMS_AGENDA, sms);
//values.put(COLUNA_STATUS_AGENDA, "true");
values.put(COLUNA_SEGUNDA_REPETIR, repetir[0]);
values.put(COLUNA_TERCA_REPETIR, repetir[1]);
values.put(COLUNA_QUARTA_REPETIR, repetir[2]);
values.put(COLUNA_QUINTA_REPETIR, repetir[3]);
values.put(COLUNA_SEXTA_REPETIR, repetir[4]);
values.put(COLUNA_SABADO_REPETIR, repetir[5]);
values.put(COLUNA_DOMINGO_REPETIR, repetir[6]);
values.put(COLUNA_ID_SMS_AGENDA, id_sms);
Log.i("BANCO DE DADOS", "Valores inseridos com sucesso na tabela Agenda!");
return mDb.insert(TABELA_AGENDA, null, values);
}
public long inserirSMS(String descricao, String texto){
ContentValues values= new ContentValues();
values.put(COLUNA_DESCRICAO_SMS, descricao);
values.put(COLUNA_TEXTO_SMS, texto);
Log.i("BANCO DE DADOS", "Valores inseridos com sucesso na tabela SMS!");
return mDb.insert(TABELA_SMS, null, values);
}
// METODOS P/ CONSULTAR NO BD
public Cursor consultaTodosSMS(){
return mDb.query(TABELA_SMS, new String[]{}, null, null, null, null, null);
}
public Cursor consultaTodosAgenda(){
return mDb.query(TABELA_AGENDA, new String[]{}, null, null, null, null, null);
}
}
0 comentários:
Postar um comentário