J'ai écrit un module PyPI qui étend le style de paramètre dans le module sqlite3 de Python

sqlite3 accepte qmark et nommé comme formats de liaison de paramètres, mais n'accepte pas les formats et les formats pyformat définis dans PEP249 [^ 1] [^ 2] [^ 3]. C'est le module qui les accepte.

Les versions de Python ont été testées avec 2.7.8 et 3.4.1.

: cake: Comment utiliser

pip install sqlite3paramstyle

Il se lie à la partie de % s.

conn = sqlite3paramstyle.connect(":memory:")
cur = conn.cursor()
cur.execute("select %s, %s", ("foo", "bar"))
cur.fetchall()  # [("foo", "bar")]

Il prend également en charge le format étendu Python.

cur.execute("select %(who)s, %(age)s", {"who": "John", "age": 20})
cur.fetchall()  # [("John", 20)]$

J'espère que cela aide quelqu'un quelque part: les bières:

: grenouille: Arrière-plan créé

J'étais censé maintenir le code Python avec presque aucun code de test et ajouter des tests tranquillement, mais j'ai trouvé du code Python qui utilise psycopg2 live. Je voulais vraiment utiliser SQL Alchemy, mais c'était une phase difficile pour changer les modules dépendants, j'ai donc décidé de procéder dans le sens de ne pas changer autant que possible. Je ne voulais pas garder le processus Postgresql en cours d'exécution sur le serveur CI tout le temps, et la connexion à la base de données était sous une forme qui pouvait être transmise de l'extérieur, alors lors des tests, j'ai essayé de passer la connexion de sqlite3 et de l'exécuter. Cependant, les styles de paramètres acceptés par «psycopg2» sont le format et les formats pyformat décrits ci-dessus, qui sont complètement incompatibles avec «sqlite3». J'ai trouvé qmarkpg qui étend psycopg2 pour accepter les styles qmark, alors pourquoi ne pas écrire un module qui fonctionne dans la direction opposée? Dès que j'ai pensé.

Heureux d'être un auteur PyPI: smiley_cat: Wow Wow

Site référencé

Comment s'inscrire auprès de PyPI

Comment utiliser tox

Recommended Posts

J'ai écrit un module PyPI qui étend le style de paramètre dans le module sqlite3 de Python
J'ai écrit un script qui divise l'image en deux
Un mémo que j'ai écrit un tri rapide en Python
J'ai écrit la file d'attente en Python
J'ai écrit la pile en Python
J'ai créé un programme qui résout la recherche d'erreur en quelques secondes
Une histoire qui n'a pas fonctionné lorsque j'ai essayé de me connecter avec le module de requêtes Python
J'ai écrit un lecteur de corpus qui lit les résultats de l'analyse MeCab
Tri sélect écrit en C
J'ai écrit l'aile coulissante dans la création.
J'ai enregistré PyQCheck, une bibliothèque qui peut effectuer QuickCheck avec Python, dans PyPI.
Notez que je comprends l'algorithme des moindres carrés. Et je l'ai écrit en Python.
Je souhaite voir une liste de fichiers WebDAV dans le module Requêtes
J'ai écrit un script pour relancer la montre gulp qui mourra bientôt
J'ai écrit une classe en Python3 et Java
J'ai écrit un modèle de conception dans l'édition Kotlin Prototype
J'ai essayé d'ajouter un module Python 3 en C
J'ai écrit un analyseur japonais en japonais en utilisant pyparsing.
Une histoire qui était pratique lorsque j'ai essayé d'utiliser le module d'adresse IP python
J'ai écrit un modèle de conception dans l'édition Kotlin Factory
J'ai écrit un modèle de conception dans l'édition Kotlin Builder
J'ai écrit un modèle de conception dans l'édition Kotlin Adapter
J'ai écrit un modèle de conception en kotlin, édité par Iterator
Un mémo que j'ai touché au magasin de données avec python
[Note] Le module installé ne peut pas être appelé dans jupyter.
J'ai écrit un modèle de conception dans l'édition de modèle kotlin
J'ai écrit un script Python qui exporte tous mes articles à l'aide de l'API Qiita v2
J'ai écrit un code qui dépasse le taux de récupération de 100% dans la prédiction des courses de chevaux en utilisant LightGBM (partie 2)
J'ai écrit un module Ansible brut qui vous permet d'utiliser Virtualenv en installant Pythonz.
J'ai écrit un doctest dans "J'ai essayé de simuler la probabilité d'un jeu de bingo avec Python"
Un mémorandum pour enregistrer la bibliothèque écrit en Hy dans PyPI
J'ai essayé l'algorithme de super résolution "PULSE" dans un environnement Windows
Mémo que je suis resté coincé dans l'introduction de Mezzanine
J'ai écrit le fonctionnement de base de Seaborn dans Jupyter Lab
Des mots qui m'intéressaient en tant que débutant en programmation
J'ai essayé "un programme qui supprime les déclarations en double en Python"
Je l'ai écrit en langage Go pour comprendre le principe SOLID
J'ai écrit un script pour obtenir un site populaire au Japon
Y a-t-il un biais dans les nombres qui apparaissent dans les nombres de Fibonacci?
J'ai écrit le fonctionnement de base de Numpy dans Jupyter Lab.
Un mémorandum que vous utiliserez souvent avec Selenium en Python
Notez que j'étais accro à accéder à la base de données avec mysql.connector de Python en utilisant une application Web