使用意图将字符串发送到数据库时出现问题

时间:2015-08-01 21:15:20

标签: android

我无法通过意图将字符串发送到数据库。 我试着这样做

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()"无法解决,我已经导入了意图类 有人知道如何使用意图将字符串传递给数据库吗? 提前谢谢。

2 个答案:

答案 0 :(得分:0)

getIntent()方法在Activity中定义,而不在SQLiteOpenHelper中定义。 SQLiteOpenHelpergetWritableDatabase()方法,您可以使用该方法获取对数据库的引用。

例如,您可以在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);