FR: support environment variables in (favourite) queries
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 30/100
Piste de recherche
Commencez par localiser la gestion des requêtes favorites de litecli et le point d’entrée des commandes \f ; l’issue ne nomme aucun fichier source ni aucun test. Examinez comment les arguments $1/$2 existants sont substitués, puis déterminez si l’expansion de l’environnement s’applique uniquement aux requêtes favorites ou à toutes les requêtes. Le travail est considéré comme terminé lorsque la syntaxe convenue fonctionne avec les variantes de base de données illustrées sans casser les paramètres de requête existants.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
I'd love to see support for using environment variables in favourite queries, or even in all queries.
The use case is that I have several very similar databases where favourite queries all need to take a parameter to indicate what 'variant' of the database I'm currently using, or I have to copy configuration files for each database file and alter one value in each query filter.
Say, the different values are 'foo' and 'bar', and I have to either do:
favquery1 = '''select ...
from some_table
where parameter='$1'
and other_paramater='$2'
'''
favquery2 = '''select ...
from some_other_table sot inner join a_third_table att on sot.id = att.sot_id
where sot.parameter='$1'
and att.column_name ='$2'
'''
and then run \f favquery1 foo 42 and \f favquery2 bar 45, or I copy the configuration file multiple times and hardcode the parameter in each.
If, instead, I could use environment variables (syntax suggestion, feel free to come up with better syntax, this is based on bash):
favquery1 = '''select ...
from some_table
where parameter='${PARAMETER}'
and other_paramater='$1'
'''
favquery2 = '''select ...
from some_other_table sot inner join a_third_table att on sot.id = att.sot_id
where sot.parameter='${PARAMETER}'
and att.column_name ='$1'
'''
and then start each litecli instance with a different environment variable and use the exact same favourites for each database:
$ PARAMETER=foo litecli foo_database.sqlite
foo_database.sqlite> \f favquery1 42
and
$ PARAMETER=bar litecli bar_database.sqlite
bar_database.sqlite> \f favquery1 42
- Langage dominant
- Python
- Étoiles
- 3.3k
- Forks
- 95
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de dbcli/litecli
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 66/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 45/100
-
Difficulté 3/5 1-2 jours Accessibilité débutants 45/100
Toutes les issues de dbcli/litecli
Issues similaires
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
stephrobert/dsoxlab#238 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
sublimehq/package_control#1780 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
nwg-piotr/nwg-displays#145 ·