Comment puis-je voir la structure de la table dans SQLite comme desc
l'était dans Oracle ?
Exécuter .header on
avant d'exécuter la commande ci-dessus. vous pouvez afficher les colonnes avec les données.
Comment puis-je voir la structure de la table dans SQLite comme desc
l'était dans Oracle ?
PRAGMA table_info(table_name);
Ceci fonctionnera à la fois en ligne de commande et lors de l'exécution contre une base de données connectée.
Un lien pour plus de détails et d'exemples. Merci Commande Pragma SQLite
Exécuter .header on
avant d'exécuter la commande ci-dessus. vous pouvez afficher les colonnes avec les données.
Ceci devrait être la réponse acceptée. Les classes .tables et .schema affichent seulement "les déclarations originales CREATE TABLE et CREATE INDEX". Toute modification ultérieure NE sera PAS reflétée.
Si vous souhaitez obtenir les informations sur la table d'une base de données attachée appelée 'foo', vous exécutez PRAGMA foo.table_info(nom_de_la_table);
Appelez l'utilitaire sqlite3
sur le fichier de base de données, et utilisez ses commandes spéciales dot :
.tables
listera les tables.schema [nomtable]
affichera la ou les déclarations CREATE pour une table ou des tablesIl existe de nombreuses autres commandes dot intégrées utiles - consultez la documentation à l'adresse http://www.sqlite.org/sqlite.html, section Commandes spéciales pour sqlite3.
Exemple :
sqlite> entropie:~/Bibliothèque/Mail>sqlite3 Envelope\ Index
Version SQLite 3.6.12
Entrez ".help" pour obtenir des instructions
Entrez des instructions SQL terminées par un ";"
sqlite> .tables
adresses dossiers_ews sujets
alarmes flux fils
associations boîtes_mail notes_todo
pièces_jointes messages todos
calendriers propriétés todos_log_supprimés
événements destinataires todo_snapshot_serveur
sqlite> .schema alarmes
CREATE TABLE alarmes (ROWID INTEGER PRIMARY KEY AUTOINCREMENT, id_alarme,
todo INTEGER, flags INTEGER, offset_jours INTEGER,
date_rappel INTEGER, heure INTEGER, argument,
données_non_reconnues BLOB);
CREATE INDEX index_id_alarme ON alarmes(id_alarme);
CREATE INDEX index_todo_alarme ON alarmes(todo);
Notez également que SQLite enregistre le schéma et toutes les informations sur les tables dans la base de données elle-même, dans une table magique nommée sqlite_master, et il est également possible d'exécuter des requêtes SQL normales contre cette table. Par exemple, le lien de documentation ci-dessus montre comment déduire le comportement des commandes .schema
et .tables
, en utilisant des commandes SQL normales (voir la section : Interrogation du schéma de la base de données).
Une erreur courante ici est de confondre ces fonctions utilitaires avec des instructions SQL.. le premier ne nécessite pas de ;
à la fin de la commande, alors que le dernier en a besoin.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.