I think we should use autoincrement/serial and have a db_last_id function (mysql_insert_id, select currval, lastInsertId in PDO etc.). This would make Drupal code actually shorter and simpler (a very little bit).