Как записать данные в определенную строку определенного столбца?
Возможно ли записать данные в определенную строку определенного столбца?
Например:
Id|Name
1|11|user1
2|15|
3|17|user3
4|25|user4
В строчку 2 под столбец 'Name' записать 'user2'
Ответы (2 шт):
Использовать порядковые номера строк в реляционных БД нельзя, т.к. они могут измениться.
Например если после удаления нескольких строк сделать VACUUM, то SQLite удалит "дырки", чтобы сделать БД более компактной. После этого номера всех строк, располагавшихся после первой дырки (удаленной строки) изменятся.
Все операции изменения строк желательно выполнять по первичному ключу (Primary Key), который обязан быть уникальным.
Судя по вашим данным, столбец Id - выполняет у вас роль первичного ключа. Поэтому гораздо безопаснее и правильнее идентифицировать записи по столбцу Id:
sqlite> select * from tab;
Id Name
-- -----
11 user1
15
17 user3
25 user4
sqlite> update tab set name = 'user2' where id = 15 and name is null;
sqlite> select * from tab;
Id Name
-- -----
11 user1
15 user2
17 user3
25 user4
Insert into users value(name) where id=? ; и под вопрос подставляете что вам надо