Établir un rapport sur une base de données avec info
Traduction automatique provisoire, non révisée. En cas de doute, consultez la version anglaise, qui fait foi.
kent info indique ce que contient une base de données Cordelia existante : sa
version de schéma, la version de schéma que cette compilation de Kent attend, et le nombre de
lignes de chaque table qui contient au moins une ligne.
Il est en lecture seule. kent info ouvre la base de données et n'y écrit
rien.
Synopsis
kent info <dbfilename>
Seules les tables peuplées sont listées
Une base de données Cordelia compte environ 129 tables, dont la plupart sont vides tant
qu'aucune activité n'a été importée ; toutes les lister enterrerait celles qui comptent.
Utilisez kent details pour voir toutes les tables, y
compris les vides.
Les tables de référence ne sont pas traitées à part.
FileTypeLookup, FieldTypeLookup et les tables
better_labels_* sont pré-remplies à la création d'une base, elles contiennent
donc des lignes et sont listées comme n'importe quelle autre table peuplée. Dans une base
créée par kent createdb et jamais alimentée, ces
tables pré-remplies sont la seule chose que kent info rapporte. C'est attendu, pas un défaut.
Deux versions de schéma sont toujours affichées
Les deux sont imprimées parce qu'elles peuvent légitimement différer sur une base qui s'ouvre correctement :
- Version de schéma : ce que ce fichier de base de données stocke.
- Attendue par cette compilation, ce qu'écrit la version de Cordelia contre laquelle Kent a été compilé.
Une base écrite par une Cordelia plus récente s'ouvre normalement et
annonce sa propre version supérieure. Une base écrite par une Cordelia plus
ancienne est refusée d'emblée, la couche base de données de Cordelia la rejette à
l'ouverture plutôt que de laisser l'écart ressurgir plus tard sous forme de lignes illisibles, donc kent info affiche ce refus et sort avec le code 1. Il n'y a
actuellement aucun moyen de migrer une ancienne base de données.
Un chemin inexistant n'est pas créé
Un chemin qui n'existe pas est signalé comme manquant et n'est pas créé. C'est important parce que l'appel d'ouverture de SQLite crée lui-même le fichier qu'on lui donne : un chemin mal saisi laisserait sinon derrière lui une base de données vide égarée.
Exemples
Une base fraîchement créée, seules les tables de référence pré-remplies contiennent des lignes :
$ kent createdb mydata.sqlite
$ kent info mydata.sqlite
Database: mydata.sqlite
Schema version: 2
Expected by this build: 2
Table Rows
------------------------- -----
FieldTypeLookup 7
FileTypeLookup 20
better_labels_definitions 2811
better_labels_lookup 16866
------------------------- -----
Total (4 tables) 19704
Une base plus ancienne que ce que cette compilation comprend :
$ kent info old.sqlite
kent info: failed to open database: This database uses an older schema and cannot be opened; version 2 is required. Create a new database and import your .FIT files again.
$ echo $?
1
Un chemin qui n'existe pas :
$ kent info nope.sqlite
kent info: nope.sqlite does not exist
$ echo $?
1
Voir aussi Rapport complet avec details et Messages d'erreur et codes de sortie.