сначала ... Я не хочу, чтобы это изменило мой ПЕРВИЧНЫЙ КЛЮЧ ....
и вот метод создания моей БД ....
public void onCreate(SQLiteDatabase db) {
String DATABASE_CREATE_TABLE =
"create table userData ("
+ "_id INTEGER PRIMARY KEY AUTOINCREMENT,"
+ "HTTPorS TEXT,"
+ "IPHostName TEXT,"
+ "port TEXT,"
+ "userName TEXT,"
+ "password TEXT,"
+ "saveOption TEXT"
+ ");";
db.execSQL(DATABASE_CREATE_TABLE);
}
ивот как я добавляю в него строки
public long create(String HTTPorS, String IPHostName, String port, String userName, String password, String saveOption) {
ContentValues args = new ContentValues();
args.put("HTTPorS", HTTPorS);
args.put("IPHostName", IPHostName);
args.put("port", port);
args.put("userName", userName);
args.put("password", password);
args.put("saveOption", saveOption);
return db.insert("userData", null, args);
}
Оба метода работают до того, как работают нормально ... Но когда я хочу изменить значение строк ... Я использую этот метод
public void update(long rowId,String httporS, String IP,String Port,String userName,String password) {
ContentValues args = new ContentValues();
args.put("HTTPorS", httporS);
args.put("IPHostName", IP);
args.put("port", Port);
args.put("userName", userName);
args.put("password", password);
args.put("saveOption", "no use");
db.update("userData",
args,
"_id=" + rowId,
null
);
}
Он работает нормально, и в этом методе получают правильные значения "do" ...
, но данные БД не заменили
почему это так?спасибо за вашу помощь!