我无法通过意图将字符串发送到数据库。 我试着这样做
public void onCreate(SQLiteDatabase db) {
String sql = "create table "+ DATABASE_TABLE + " ( "
+ KEY_ROW_ID + " integer primary key autoincrement , "
+ NOTE + " text ) " ;
db.execSQL(sql);
String x=getIntent().getExtras().getString("message");
sql = "insert into " + DATABASE_TABLE + " ( " + NOTE+ " ) "
+ " values ( x)";
db.execSQL(sql);
}
但它一直告诉我" getIntent()"无法解决,我已经导入了意图类 有人知道如何使用意图将字符串传递给数据库吗? 提前谢谢。
答案 0 :(得分:0)
getIntent()
方法在Activity
中定义,而不在SQLiteOpenHelper
中定义。 SQLiteOpenHelper
有getWritableDatabase()
方法,您可以使用该方法获取对数据库的引用。
例如,您可以在Activity启动时设置数据库,使用getWritableDatabase()
获取对数据库的引用,然后使用意图中的数据写入数据库。
答案 1 :(得分:0)
在我看来,您正在尝试将条目插入数据库。然后我不明白你为什么要使用意图?你能否澄清一下你想用它做些什么?
将条目插入数据库的最简单方法是在SQLiteOpenHelper中创建一个方法名称insert(String message):
public long insert(String message) {
SQLiteDatabase db=getWritableDatabase();
ContentValues cv=new ContentValues();
cv.put(COLUMN_NAME,message);
return db.insert(TABLE_NAME,null,cv);