我想在我的Android应用程序中使用SQLite。我创建了这样的帮助类:如何在我的android应用程序中创建数据库?
public class EventoSQLHelper {
// Configuração da base(nome e versão)
private static final int DB_VERSAO = 1;
private static final String DB_NOME = "pacixDB";
// Configuração da tabela (nome, colunas, tag para log)
private static final String tabela_nome = "eventos";
private static final String coluna_id = "id";
private static final String coluna_desc = "descricao";
private static final String coluna_data = "dataEvento";
private static final String TAG = EventoSQLHelper.class.getSimpleName();
// Comando sql para criação da tabela
private static final String DATABASE_CREATE = "create table if not exists eventos (id integer primary key autoincrement, "
+ "descricao VARCHAR not null, dataEvento date);";
// Contexto para o qual vai passar as informações
private final Context context = null;
private DataBaseHelper DBHelper;
private SQLiteDatabase database;
// Helper que extende de SQLiteOpenHelper - implementa práticas para salvar,
// criar, etc
private static class DataBaseHelper extends SQLiteOpenHelper {
DataBaseHelper(Context context) {
super(context, DB_NOME, null, DB_VERSAO);
}
// executado quando cria a classe: cria a base se não existir
@Override
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL(DATABASE_CREATE);
} catch (Exception e) {
e.printStackTrace();
}
}
// método para upgrade da base
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(TAG, "Atualizando base da versão " + oldVersion
+ " para a versão " + newVersion
+ ", que irá destruir todos os dados.");
db.execSQL("DROP TABLE IF EXISTS eventos");
onCreate(db);
}
}
public EventoSQLHelper Open() throws SQLException {
this.database = DBHelper.getWritableDatabase();
return this;
}
public void close() {
DBHelper.close();
}
public long inserirRegistro(String descricao, String data) {
ContentValues valoresIniciais = new ContentValues();
valoresIniciais.put(coluna_desc, descricao);
valoresIniciais.put(coluna_data, data);
return database.insert(tabela_nome, null, valoresIniciais);
}
public boolean deletarRegistro(long id) {
return database.delete(tabela_nome, coluna_id + " = " + id, null) > 0;
}
public Cursor getRegistros() {
return database.query(false, tabela_nome, new String[] { coluna_id,
coluna_desc, coluna_data }, null, null, null, null, null, null);
}
我在互联网上跟着一些教程,我已经了解了sqlhelper类。但现在,我如何创建数据库?这是一个文件,对吧?我必须在我的主要活动的onCreate方法上创建它吗?
我该怎么做?
不,你不需要创建数据库文件 – AndikaK 2014-09-20 15:47:15