我想用onCreate方法将一些文本插入我的sqlite数据库。
我正在研究它几个小时(它不起作用......)(我是新的@android)。
使用andoid studio。请用onCreate告诉我一个简单的方法。 它只显示第一个日志:Log.d(“Database op”,“Database created”);
public class DatenbankHandler extends SQLiteOpenHelper {
public static final int database_version = 1;
public static final String DATABASE_NAME = "adventure.db";
public static final String dialog_var = "dialog";
public static final String gadget_row = "gadget";
public static final String TABLE_NAME = "liam";
public String Create_Query= "CREATE TABLE" + TABLE_NAME + " (_ID INTEGER PRIMARY KEY AUTOINCREMENT," + dialog_var + " TEXT, " + gadget_row + " TEXT);";
public DatenbankHandler(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, DATABASE_NAME, null, database_version);
Log.d("Database op", "Database created");
}
@Override
public void onCreate(SQLiteDatabase db) {
// Create table
db.execSQL(Create_Query);
Log.d("Database Table", "Table created");
// Insert into database
db.execSQL("INSERT INTO liam (" + dialog_var + "," + gadget_row + ") VALUES('I'm Liam', null)");
Log.d("Database insert", "success");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
答案 0 :(得分:0)
这样的事情应该有用......
public class SharedPreferencesManager {
private SQLiteDatabase banco;
private Context _context;
private final String DATABASE_NAME = "blablabla";
//0 - private (apenas essa aplicação pode usar o banco).
//1 - read for all (others apps can read this db).
//2 - write for all (others apps can write on this db).
private final int DATABASE_ACESS = 0;
private a="col_name_1",b="col_name_2",c="col_name_3",table_name="blablabla";
private final String SQL_CREATE_TABLE_BLA = "CREATE TABLE IF NOT EXISTS " + table_name + "( " +
a+" INTEGER PRIMARY KEY AUTOINCREMENT," +
b+" INTEGER UNIQUE, " +
c+" TEXT );";
public SqliteManager(Context context) {
this._context = context;
this.banco = context.openOrCreateDatabase(DATABASE_NAME, DATABASE_ACESS, null);
this.banco.execSQL(SQL_CREATE_TABLE_BLA);
insert()
}
private void insert(int number, String txt){
ContentValues values = new ContentValues();
values.put(this.b, number);
values.put(this.c, txt);
this.banco.insert(this.table_name, null, values);
}
}
您需要创建像SharedPreferencesManager sqlite = new SharedPreferencesManager (ACTIVITY_OR_CONTEXT);
这样的类实例化,并使用sqlite.YOUR_METHOD()
。