【发布时间】:2017-11-08 06:39:42
【问题描述】:
我是 android 开发的新手。我有一个登录和注册页面,在注册活动传递到最终成功后,我通过该页面收集用户的信息,例如姓名电子邮件和手机号码,所有信息都显示出来了……我想更新 3已经从数据库中提取到最终成功活动的手机号码...在该活动中,我希望将已经提取的号码再次更新到数据库中..请帮助..提前谢谢..
我在 SQliteDBhelperclass 中的表
private static final String DATABASE_NAME = "info.db";
private static final int DATABASE_VERSION = 1;
public static final String TABLE_NAME = "profile";
public static final String COLUMN_ID = "userid";
public static final String COLUMN_FULLNAME = "fullname";
public static final String COLUMN_EMAIL = "email";
public static final String COLUMN_PASSWORD = "password";
public static final String COLUMN_MOBILE = "mobile";
public static final String COLUMN_RELATIVE_MOBILE = "mobile2";
public static final String COLUMN_RELATIVE_MOBILE3 = "mobile3";
public static final String COLUMN_RELATIVE_MOBILE4 = "mobile4";
public static final String COLUMN_ADDRESS = "address";
private static final String CREATE_TABLE_QUERY =
"CREATE TABLE " + TABLE_NAME + " (" +
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
COLUMN_FULLNAME + " TEXT, " +
COLUMN_EMAIL + " TEXT, " +
COLUMN_PASSWORD + " TEXT, " +
COLUMN_RELATIVE_MOBILE + " TEXT, " +
COLUMN_RELATIVE_MOBILE3 + " TEXT, " +
COLUMN_RELATIVE_MOBILE4 + " TEXT, " +
COLUMN_ADDRESS + " TEXT, " +
COLUMN_MOBILE + " TEXT " + ")";
我的更新方法不起作用
public StringBuffer getData(){
String query="SELECT * FROM "+TABLE_NAME;
SQLiteDatabase sqLiteDatabase=this.getReadableDatabase();
Cursor cursor=sqLiteDatabase.rawQuery(query,null);
StringBuffer stringBuffer=new StringBuffer();
if (cursor!=null)
{
cursor.moveToFirst();
do {
String mobile=cursor.getString(cursor.getColumnIndex("mobile2"));
stringBuffer.append(" "+mobile+ "\n");
}while (cursor.moveToNext());
cursor.close();
}
return stringBuffer;
}
public void updatedata(String mob) {
SQLiteDatabase sqLiteDatabase=this.getWritableDatabase();
ContentValues contentValues=new ContentValues();
contentValues.put(COLUMN_RELATIVE_MOBILE,mob);
sqLiteDatabase.update("TABLE_NAME",contentValues,"userid='5' and RELATIVE_MOBILE='mobile2'",null);
}
这是点击更新按钮
enter code here
sqLiteDBHelper.updatedata(editText.getText().toString());
StringBuffer stringBuffer=sqLiteDBHelper.getData();
tvshow.setText(stringBuffer.toString());
String op = tvshow.toString();
Toast.makeText(LoginSuccessActivity.this, "Contacts updated", Toast.LENGTH_SHORT).show();
}
});
【问题讨论】: