Java 了解sqlite上的update命令
我在理解SQLite的更新命令时遇到了一些困难 在我的示例中,我正在执行一个更新数据库,但如果出现错误,我将传递一条错误消息。如果用户试图更新不存在的记录,我不会收到错误消息 这是我的代码,首先是update命令,然后是我的调用:Java 了解sqlite上的update命令,java,android,sqlite,Java,Android,Sqlite,我在理解SQLite的更新命令时遇到了一些困难 在我的示例中,我正在执行一个更新数据库,但如果出现错误,我将传递一条错误消息。如果用户试图更新不存在的记录,我不会收到错误消息 这是我的代码,首先是update命令,然后是我的调用: public long updateContact(String firstName, String lastName, String address, String city, String state, int zipCode, long mo
public long updateContact(String firstName, String lastName, String address, String city, String state,
int zipCode, long mobileNumber, long altNumber, String email) {
ContentValues contactInfo = new ContentValues();
contactInfo.put(KEY_FNAME, firstName);
contactInfo.put(KEY_LNAME, lastName);
contactInfo.put(KEY_ADDR, address);
contactInfo.put(KEY_CITY, city);
contactInfo.put(KEY_STATE, state);
contactInfo.put(KEY_ZIP, zipCode);
contactInfo.put(KEY_MOBILE, mobileNumber);
contactInfo.put(KEY_ALT, altNumber);
contactInfo.put(KEY_EMAIL, email);
String where = "FIRSTNAME = '" + firstName + "' AND LASTNAME = '" + lastName + "'";
return db.update(DATABASE_TABLE, contactInfo, where, null);
}
电话:
if (searchTerm.length() > 0) {
id = db.updateContact(fName, lName, address.getText().toString().trim(),
city.getText().toString().trim(), state.getSelectedItem().toString().trim(), Integer.parseInt(zip.getText().toString().trim()),
Long.valueOf(mobile.getText().toString().trim()), Long.valueOf(alternate.getText().toString().trim()),
email.getText().toString().trim());
if (id == -1) {
DisplayErrorDialog("I'm sorry, we can not update the contact with the present data.");
}
}
当我提供有效数据时,更新正在运行。但是,当我给它提供无效数据(数据库中没有的名称)时,我没有收到相应的错误消息。来自:
返回受影响的行数 因此,
db.update
将在未更新任何内容时返回0(即,中的
与任何行都不匹配),而updateContact
将返回0。因此,您可能希望将id
重命名为numberUpdated
(或类似名称),并在numberUpdated上从以下位置显示错误:
返回
受影响的行数
因此,db.update
将在未更新任何内容时返回0(即,中的
与任何行都不匹配),而updateContact
将返回0。因此,您可能希望将id
重命名为numberUpdated
(或类似)并在numberUpdated上显示错误。返回值是更新的行数,而不是id。请检查0,而不是-1。这意味着您可能要更新多条记录,这是数据库更新通常的工作方式。返回值是更新的行数,而不是id。请检查0,而不是-1。这意味着您可以更新多个记录,这是数据库更新通常的工作方式