Maison > développement back-end > Tutoriel Python > Connectez-vous à plusieurs bases de données, effectuez ou générez des requêtes SQL, analysez ou visualisez.

Connectez-vous à plusieurs bases de données, effectuez ou générez des requêtes SQL, analysez ou visualisez.

Barbara Streisand
Libérer: 2024-12-12 17:07:10
original
144 Les gens l'ont consulté

Connect to multiple databases, make or generate SQL queries, analyze or visualize.

Source : https://github.com/HimrajDas/SQTHON

SQTHON

Connectez-vous à plusieurs bases de données, exécutez des requêtes SQL brutes, effectuez des analyses et effectuez une visualisation.

Je travaille actuellement sur :

  • SqthonAI : générez des requêtes SQL à l'aide d'un LLM de votre choix ?
  • Améliorations de la sécurité?
  • Nouvelles fonctionnalités
  • exception personnalisée pour une meilleure présentation des erreurs ?

Le package n'est pas encore publié sur pypi et est créé en utilisant de la poésie. ?

Actuellement, ce package ne fonctionnera que sous Windows.

Et pour votre sécurité, créez un environnement virtuel.

Installation ?

1. Clonez le référentiel.

https://github.com/HimrajDas/SQTHON.git
Copier après la connexion
Copier après la connexion
cd sqthon
Copier après la connexion
Copier après la connexion

2. Installez la poésie (si elle n'est pas installée)

Utiliser Windows PowerShell

(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -
Copier après la connexion

Utilisation de Linux, macOS, Windows (WSL)

curl -sSL https://install.python-poetry.org | python3 -
Copier après la connexion

Utiliser pipx

pipx install poetry
Copier après la connexion

3. Installez les dépendances en utilisant la poésie

poetry install
Copier après la connexion

Installation alternative ?

pip install git https://github.com/HimrajDas/SQTHON

Maintenant, comment l'utiliser ?

1. Créez un fichier .env à la racine de votre projet. [une étape incontournable]

  • définissez les mots de passe de la base de données comme ceci : password

2. Connectons-nous à une base de données.

from sqthon import Sqthon
# Instantiate the class. Passwords gets fetch from the .env file (that's why you have to create it)
sq = Sqthon(dialect="mysql", user="root", host="localhost", service_instance_name="MySQL service instance name")

# Connects to a database
conn1 = sq.connect_to_database(database="dbname", local_infile=True) # local_infile controls the infile settings for the client.
conn2 = sq.connect_to_database("dbname")

# or you can connect like this:
conn3 = sq.connect_db.connect(database="dbname") # not preferred ❌.
Copier après la connexion

Si votre serveur MySQL n'est pas en cours d'exécution, fournir service_instance_name démarrera automatiquement le serveur.
Si vous n'exécutez pas le script en tant qu'administrateur, il vous demandera le privilège d'administrateur pour démarrer le serveur.

3. Requêtes.

Supposons que vous ayez une base de données nommée factice ?

Connectez-vous à la base de données.

dummy_conn = sq.connect_to_database(database="dummy")
Copier après la connexion

Maintenant, comment puis-je exécuter certaines requêtes ?

# Suppose, You have a table named sales in the dummy database.
query = """
SELECT customer_name FROM sales;
"""

customer_names = dummy_conn.run_query(query=query) # it will return the result as pandas dataframe.
Copier après la connexion

run_query ont plusieurs paramètres autres que query, ils sont : visualize: bool = False,
plot_type : str = Aucun,
x=Aucun,
y=Aucun,
titre=Aucun.
Si vous créez visualize=True et fournissez les arguments x, y et plot_type, il renverra un graphique avec
les données que je ne pense pas bonnes pour une utilisation ultérieure de la variable.

4. Visualisation.

https://github.com/HimrajDas/SQTHON.git
Copier après la connexion
Copier après la connexion

5. Importation CSV dans une table.

J'ai isolé cette fonctionnalité pour plusieurs raisons de sécurité. Ce que je veux dire, c'est qu'il utilise un
séparé moteur pour importer le csv dans une table dont vous n'avez pas à vous soucier ?

Il existe dans le util.py en tant que méthode distincte dépourvue de vie des autres.
Actuellement, il prend en charge mysql uniquement.

Nom de la méthode : import_csv_to_mysqltable

Paramètres qu'il contient :

  • utilisateur : str
  • hôte : str
  • base de données : str
  • csv_path : str
  • service_instance : str = Aucun
  • tableau : str

utilisateur : nom d'utilisateur,
hôte : hôte,
base de données : nom de la base de données,
csv_path : chemin relatif ou absolu vers le fichier csv.

table : nom de la table, si elle n'existe pas alors il créera la table selon le fichier csv.
Vous n'avez pas à vous soucier des types de données. Il s'en chargera.

cd sqthon
Copier après la connexion
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal