У меня есть класс, в котором я создаю базу данных.Я хочу сделать манипулирование данными в другом классе.У меня есть следующий код:
public class DBCreation
{
public static final String KEY_CODPROJECT = "codProject";
public static final String KEY_NOME = "nome";
private static final String TAG = "DBCreation";
private static final String DATABASE_NAME = "scrum_management.db";
private static final String DATABASE_TABLE = "project";
private static final int DATABASE_VERSION = 1;
private static final String DATABASE_CREATE =
"create table project (codProject integer primary key autoincrement, "
+ "name text);";
private final Context context;
private DatabaseHelper DBHelper;
private SQLiteDatabase db;
public DBCreation(Context ctx)
{
this.context = ctx;
DBHelper = new DatabaseHelper(context);
}
private static class DatabaseHelper extends SQLiteOpenHelper
{
DatabaseHelper(Context context)
{
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db)
{
db.execSQL(DATABASE_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion,
int newVersion)
{
Log.w(TAG, "Upgrading database from version " + oldVersion
+ " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS projecto");
onCreate(db);
}
}
public DBCreation open() throws SQLException
{
db = DBHelper.getWritableDatabase();
return this;
}
public void close()
{
DBHelper.close();
}
}
Тогда у меня есть класс для доступа к данным.
public class DBAdapter extends DBCreation{
public DBAdapter(Context ctx) {
super(ctx);
// TODO Auto-generated constructor stub
}
//---insere um novo local na base de dados---
public long insertLocal(String descricao, String pais, String cidade,String categoria_desc)
{
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_NOME, nome);
}
}
Это неправильно.Может кто-нибудь помочь мне, как я могу сделать манипулирование данными в другом классе, делая что-то вроде этого?
Спасибо