I use a single direction linked list. This implementation requires a dummy entry for position 0 but works well for me. ``` CREATE TABLE teachertable ( teacher_id INTEGER NOT NULL PRIMARY KEY, teacher_displayname TEXT NOT NULL UNIQUE, teacher_prev INTEGER NOT NULL REFERENCES teachertable(teacher_id) ); ``` I insert new rows in the table within a transaction which inserts a new row and updates the link to to put the item where it belongs.