AnswerDotAI / AnswerDotAI/sqlite-minutils
last_rowid returns `int ROWID` on non-`int` PKs
- Langage dominant
- Python
- Étoiles
- 17
- Forks
- 9
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
## Description
Non-int last_pk are called incorrectly, or the table continues to have a ROWID. This results in that `last_id` check on any DB change returns the hidden `int ROWID` rather than whatever the pk was set to.
- https://www.sqlite.org/c3ref/last_insert_rowid.html
- https://www.sqlite.org/withoutrowid.html
## Test
```sh
python tests/test_upsert.py::test_upsert_with_hash_id
```
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par exécuter tests/test_upsert.py::test_upsert_with_hash_id et lisez la documentation SQLite liée concernant last_insert_rowid et les tables WITHOUT ROWID. Suivez le comportement de last_rowid pour les clés primaires qui ne sont pas des entiers. C’est terminé lorsque la vérification de last_id renvoie la valeur de clé primaire attribuée plutôt que le ROWID entier masqué.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python, sqlite
- Domaine
- database
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100