Таблицы SQL не имеют определенного порядка; чтобы возвращать строки в определенном порядке, вы должны обязательным условием использовать предложение ORDER BY.
В SQLite строки таблицы хранятся в порядке их внутреннего rowid (что также является значением столбца INTEGER PRIMARY KEY, если таковые имеются). Для сохранения строки перед всеми другими строками, вставить новую строку со значением rowid
, который меньше, чем все остальные:
INSERT INTO MyTable(rowid, Name, Comment)
VALUES ((SELECT MIN(rowid) FROM MyTable) - 1, 'me', 'first!');
(Пожалуйста, обратите внимание, что первый пункт все еще применяется, порядок хранения не гарантируется запрос вам все равно нужно использовать ORDER BY.)
Обычно он вставляет строку в конец. но почему вы хотите вставить в начале таблицы –