В большинстве подобных случаев rowid является индексированным столбцом. Если это так, то намного более быстрое решение:
DELETE FROM
tablename
WHERE
rowid= (SELECT rowid FROM tablename order by rowid limit 1)
Если rowid НЕ проиндексирован, то:
DELETE FROM
tablename
WHERE
rowid= (SELECT MIN(rowid) FROM tablename)
Я бы все-таки протестировал первый, поскольку он часто будет быстрее, даже если rowid не проиндексирован.