调用时更新不进行更新
Update is not doing update when is called
我有一个更新语法,当我调用它时,它并没有按照预期的方式进行。我没有收到错误,它只是不更新 table 本身。我还有其他 SQL 语法,我称之为 insert、select 和 delete,它们都在工作。我使用类似的格式。我不确定 update 与其他语法相比是否有不同的方式。我一直喜欢 SQL 语法存储在 String 变量中的方式,因为它让我了解在执行此类语法时它在数据库中的外观。有人可以帮我解决这个问题吗?
//UPDATE new SETTING into duel setting Table using sql statement
public void addnewsettingDUELSETTING(){
String SQLADD2DUELSETTING = "UPDATE " +YAOMySQLiteHelper.TABLE_DUEL_SETTING +
" SET " + YAOMySQLiteHelper.COLUMNds_ID + " = '" + "1" + "' ,"+
YAOMySQLiteHelper.COLUMNds_ME + " = '"+ DuelSettingMenu.xsp1 + "' , " +
YAOMySQLiteHelper.COLUMNds_OPPONENT + " = '"+ DuelSettingMenu.xsp2 + "' , " +
YAOMySQLiteHelper.COLUMNds_LIFE_POINT + " = '"+ DuelSettingMenu.xsp3 + "' , " +
YAOMySQLiteHelper.COLUMNds_GAME_TIMER + " = '"+ DuelSettingMenu.xsp4 + "' , " +
YAOMySQLiteHelper.COLUMNds_CALCULATOR_LAYOUT + " = '"+ DuelSettingMenu.xsp5 + "'" +
" WHERE " +YAOMySQLiteHelper.COLUMNds_ID + " = " + "'1'" ;
database.execSQL(SQLADD2DUELSETTING);
}
我认为你在查询末尾使用“'1'”做错了
它应该是 1。
无论如何,我没有太多尝试过查询语句,因为 android 有预定义的方法来做到这一点。看看这个enter link description here
//这里是一些简单的更新示例代码
//首先声明这个
private DatabaseAppHelper dbhelper;
private SQLiteDatabase db;
//初始化如下
dbhelper=new DatabaseAppHelper(this);
db=dbhelper.getWritableDatabase();
//更新码
ContentValues values= new ContentValues();
values.put(DatabaseAppHelper.KEY_PEDNAME, ped_name);
values.put(DatabaseAppHelper.KEY_PEDPHONE, ped_phone);
values.put(DatabaseAppHelper.KEY_PEDLOCATION, ped_location);
values.put(DatabaseAppHelper.KEY_PEDEMAIL, ped_emailid);
db.update(DatabaseAppHelper.TABLE_NAME, values, DatabaseAppHelper.KEY_ID + "=" + msysprefs.getid(), null);
//输入你的 id 而不是 msysprefs.getid()。msysprefs.getid() 是我共同偏好的一个函数。
我认为你的错误是你写了“1”而不是 1.I
“哪里”+YAOMySQLiteHelper.COLUMNds_ID+“=”+1;
我有一个更新语法,当我调用它时,它并没有按照预期的方式进行。我没有收到错误,它只是不更新 table 本身。我还有其他 SQL 语法,我称之为 insert、select 和 delete,它们都在工作。我使用类似的格式。我不确定 update 与其他语法相比是否有不同的方式。我一直喜欢 SQL 语法存储在 String 变量中的方式,因为它让我了解在执行此类语法时它在数据库中的外观。有人可以帮我解决这个问题吗?
//UPDATE new SETTING into duel setting Table using sql statement
public void addnewsettingDUELSETTING(){
String SQLADD2DUELSETTING = "UPDATE " +YAOMySQLiteHelper.TABLE_DUEL_SETTING +
" SET " + YAOMySQLiteHelper.COLUMNds_ID + " = '" + "1" + "' ,"+
YAOMySQLiteHelper.COLUMNds_ME + " = '"+ DuelSettingMenu.xsp1 + "' , " +
YAOMySQLiteHelper.COLUMNds_OPPONENT + " = '"+ DuelSettingMenu.xsp2 + "' , " +
YAOMySQLiteHelper.COLUMNds_LIFE_POINT + " = '"+ DuelSettingMenu.xsp3 + "' , " +
YAOMySQLiteHelper.COLUMNds_GAME_TIMER + " = '"+ DuelSettingMenu.xsp4 + "' , " +
YAOMySQLiteHelper.COLUMNds_CALCULATOR_LAYOUT + " = '"+ DuelSettingMenu.xsp5 + "'" +
" WHERE " +YAOMySQLiteHelper.COLUMNds_ID + " = " + "'1'" ;
database.execSQL(SQLADD2DUELSETTING);
}
我认为你在查询末尾使用“'1'”做错了 它应该是 1。 无论如何,我没有太多尝试过查询语句,因为 android 有预定义的方法来做到这一点。看看这个enter link description here
//这里是一些简单的更新示例代码
//首先声明这个
private DatabaseAppHelper dbhelper;
private SQLiteDatabase db;
//初始化如下
dbhelper=new DatabaseAppHelper(this);
db=dbhelper.getWritableDatabase();
//更新码
ContentValues values= new ContentValues();
values.put(DatabaseAppHelper.KEY_PEDNAME, ped_name);
values.put(DatabaseAppHelper.KEY_PEDPHONE, ped_phone);
values.put(DatabaseAppHelper.KEY_PEDLOCATION, ped_location);
values.put(DatabaseAppHelper.KEY_PEDEMAIL, ped_emailid);
db.update(DatabaseAppHelper.TABLE_NAME, values, DatabaseAppHelper.KEY_ID + "=" + msysprefs.getid(), null);
//输入你的 id 而不是 msysprefs.getid()。msysprefs.getid() 是我共同偏好的一个函数。
我认为你的错误是你写了“1”而不是 1.I “哪里”+YAOMySQLiteHelper.COLUMNds_ID+“=”+1;