Ma base de données sqlite3 contient une contrainte de colonne "collate". Je l'ai placé dans le schéma de la table, pour éviter de négliger accidentellement d'utiliser la collation nécessaire. Cela signifie toutefois que lorsque vous exécutez sqlite3
à partir de la ligne de commande, et non à partir de mon code Python, le classement référencé dans le schéma n'est pas présent et que je ne peux pas utiliser les commandes dot.Exécuter des commandes "point" sqlite3 à partir de Python ou enregistrer le classement dans l'utilitaire de ligne de commande
sqlite> .import data.txt table_name
Error: no such collation sequence: my_collation
En outre, la création de la connexion à partir de Python, et en ajoutant la collation nécessaire se heurte à ce problème:
connWithCollation.execute(".import data.txt table_name")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
sqlite3.OperationalError: near ".": syntax error
La fonction execute
il semble ne veut pas passer la commande de point sqlite3 par. Comment puis-je exécuter des commandes point sqlite3 lorsque les fonctions de classement nécessaires ne sont pas présentes?
Sinon, comment puis-je exécuter des commandes dot sqlite3 à partir de Python?
Certaines commandes semblent loin de trivial. Comment ajouter des en-têtes ou choisir le séparateur de colonnes? –