/ / Comment utiliser une variable auto-incrémentée dans sqlite? - java, sqlite

Comment utiliser une variable auto-incrémentée dans sqlite? - java, sqlite

c'est mon code en sqlite: stmt.execute ("créer une table s'il n'existe pas de personnes (nom du texte, ID INTEGER PRIMARY KEY AUTOINCREMENT)");

mais quand je vois ma table dans Navicat et que je veux l’utiliser, tout est nul. Je veux l'utiliser comme un entier (1,2, ...). Que devrais-je faire? Aidez-moi, s'il vous plaît...

Réponses:

1 pour la réponse № 1

Une simple requête google a abouti à ce résultat:

Résumé

Le mot-clé AUTOINCREMENT impose des ressources supplémentaires en termes d’UC, de mémoire, d’espace disque et de mémoire. surcharge des E / S du disque et doit être évitée si elle n’est pas strictement nécessaire. Il est généralement pas nécessaire.

Dans SQLite, une colonne de type INTEGER PRIMARY KEY est un alias pour le ROWID (sauf dans les tables SANS ROWID) qui est toujours signé 64 bits entier.

Sur un INSERT, si le ROWID ou INTEGER PRIMARY KEYla colonne n'est pas explicitement donné une valeur, alors il sera automatiquement rempli avec un nombre entier non utilisé, généralement celui de plus que le plus grand ROWID actuellement utilisé. Ceci est vrai indépendamment du fait que le message AUTOINCREMENT le mot clé est utilisé.

Si le mot-clé AUTOINCREMENT apparaît aprèsCLÉ PRIMAIRE INTEGER, que modifie l'algorithme d'affectation automatique ROWID pour empêcher la réutilisation des ROWID sur la durée de vie de la base de données. En d'autres termes, le AUTOINCREMENT a pour but d’empêcher la réutilisation de ROWID de lignes précédemment supprimées.

Référence: AutoIncrement SQLite