SQLite: Réinitialiser AUTOINCREMENT
Question de Invité | Dernière mise à jour le 01/12/2022 | Créé le 08/05/2021
J'ai une colonne ID dans ma base de données SQLite dans laquelle j'augmente automatiquement la valeur entière à l'aide d'AUTOINCREMENT dès qu'un nouvel enregistrement est inséré dans la table.
Cela fonctionne comme je veux. Cependant, je fréquemment supprime cette table et dès que j'écris à nouveau de nouvelles données dans la table vide, le comptage ne commence pas par le début mais à partir de la dernière valeur entière que la colonne avait auparavant.
Est-il possible de réinitialiser cette valeur AUTOINCREMENT pour qu'elle recommence à 0 respectivement 1?
Sujets Connexes
CSS: Réinitialiser la propriété "position"
Question | 1 Réponse
SQLite: Concaténation de Chaînes et de Colonnes (CONCAT)
Info | 0 Commentaires
SQLite: Syntaxe IF(a, b, c) ne fonctionne pas
Question | 1 Réponse
SQLite: Quel est l'ID de la dernière ligne insérée?
Info | 0 Commentaires
SQLite: Tester si une Table existe
Info | 0 Commentaires
SQLite: Vérifier ou Rechercher des Valeurs Vides
Question | 1 Réponse
SQLite: Date plus de X jours
Question | 1 Réponse
Avis Important
Veuillez noter: Les contributions publiées sur askingbox.com sont des contributions d’utilisateurs et ne doivent pas remplacer les conseils d’un professionnel. Ils ne sont pas vérifiés par des indépendants et ne reflètent pas nécessairement l’opinion de askingbox.com. Apprendre encore plus.
Participer
Posez votre propre question ou écrivez votre propre article sur askingbox.com. Voici comment.
SQLite stocke le dernier ROWID dans la table SQLITE_SEQUENCE qui est automatiquement gérée par SQLite. Les valeurs de cette table sont conservées même si vous supprimez ou videz d'autres tables.
Ainsi, vous devez non seulement supprimer votre table elle-même, mais également les informations stockées sur votre table à partir de la méta-table SQLITE_SEQUENCE. Vous pouvez le faire par exemple comme ça:
En supposant que la table que vous souhaitez supprimer s'appelle "tab". La première requête supprimerait toutes les données de votre table, la deuxième ligne supprimerait les entrées de SQLITE_SEQUENCE. Lors de l'ajout de nouvelles données après cela, le comptage recommencera depuis le début.
Vous pouvez également modifier les valeurs SQLITE_SEQUENCE individuellement. Par exemple, la requête ci-dessus laisserait le comptage commencer à 10.
08/05/2021 à 15:07