Maison >base de données >tutoriel mysql >Comment réinitialiser correctement une clé primaire à incrémentation automatique dans SQLite ?

Comment réinitialiser correctement une clé primaire à incrémentation automatique dans SQLite ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-15 14:36:43220parcourir

How to Properly Reset an Auto-Incrementing Primary Key in SQLite?

Réinitialiser la clé primaire d'incrémentation automatique SQLite

La réinitialisation des champs de clé primaire à incrémentation automatique peut être délicate lors de l'utilisation de SQLite. Une idée fausse courante est que la commande DELETE FROM tablename est suffisante. Cependant, il supprime uniquement les données et la fonction d'auto-incrémentation continue à partir du point final précédent.

Pour réinitialiser correctement votre clé primaire, considérez les étapes suivantes :

<code class="language-sql">DELETE FROM your_table;
DELETE FROM sqlite_sequence WHERE name='your_table';</code>

Mécanisme d'incrémentation automatique SQLite

SQLite maintient une table spéciale (sqlite_sequence) pour suivre le ROWID maximum attribué à chaque table. SQLite initialise cette table lors de la création de la colonne AUTOINCREMENT. La modification de la table sqlite_sequence peut casser l'algorithme de génération de clé, la prudence est donc recommandée.

De plus, les ressources suivantes peuvent être utiles :

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn