Heim >Backend-Entwicklung >Python-Tutorial >Stellen Sie eine Verbindung zu mehreren Datenbanken her, erstellen oder generieren Sie SQL-Abfragen, analysieren oder visualisieren Sie.

Stellen Sie eine Verbindung zu mehreren Datenbanken her, erstellen oder generieren Sie SQL-Abfragen, analysieren oder visualisieren Sie.

Barbara Streisand
Barbara StreisandOriginal
2024-12-12 17:07:10136Durchsuche

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

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

SQTHON

Stellen Sie eine Verbindung zu mehreren Datenbanken her, führen Sie unformatierte SQL-Abfragen aus, führen Sie Analysen durch und erstellen Sie Visualisierungen.

Aktuelle Arbeit an:

  • SqthonAI: SQL-Abfragen mit einem LLM Ihrer Wahl generieren ?
  • Sicherheitsverbesserungen?
  • Neue Funktionen
  • Benutzerdefinierte Ausnahme zur besseren Fehlerdarstellung ?

Das Paket ist noch nicht auf Pypi veröffentlicht und wird mit Poesie erstellt. ?

Derzeit funktioniert dieses Paket nur unter Windows.

Und erstellen Sie zu Ihrer Sicherheit eine virtuelle Umgebung.?

Installation ?

1. Klonen Sie das Repository.

https://github.com/HimrajDas/SQTHON.git
cd sqthon

2. Poesie installieren (falls nicht installiert)

Mit Windows PowerShell

(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -

Verwendung von Linux, macOS, Windows (WSL)

curl -sSL https://install.python-poetry.org | python3 -

Pipx verwenden

pipx install poetry

3. Installieren Sie Abhängigkeiten mithilfe von Poesie

poetry install

Alternative Installation ?

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

Wie verwende ich es nun?

1. Erstellen Sie eine .env-Datei in Ihrem Projektstammverzeichnis. [ein unbedingter Schritt]

  • Legen Sie Datenbank-Passwörter wie folgt fest: Passwort

2. Stellen wir eine Verbindung zu einer Datenbank her.

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 ❌.

Wenn Ihr MySQL-Server nicht läuft, wird der Server durch die Angabe von service_instance_name automatisch gestartet.
Wenn Sie das Skript nicht als Administrator ausführen, werden Sie um Administratorrechte zum Starten des Servers gebeten.

3. Abfragen.

Angenommen, Sie haben eine Datenbank namens dummy?

Stellen Sie eine Verbindung zur Datenbank her.

dummy_conn = sq.connect_to_database(database="dummy")

Wie führe ich nun einige Abfragen aus?

# 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.

run_query hat außer query mehrere Parameter, diese sind: visualize: bool = False,
plot_type: str = None,
x=Keine,
y=Keine,
Titel=Keine.
Wenn Sie visualize=True festlegen und die Argumente x, y und plot_type angeben, wird zusammen mit
ein Diagramm zurückgegeben die Daten, die meiner Meinung nach nicht für die spätere Verwendung der Variablen geeignet sind.

4. Visualisierung.

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

5. CSV in eine Tabelle importieren.

Ich habe diese Funktion aus mehreren Sicherheitsgründen isoliert. Was ich meine ist, dass es ein separates
verwendet Engine zum Importieren der CSV-Datei in eine Tabelle, um die Sie sich keine Sorgen machen müssen?

Es existiert in util.py als separate Methode ohne Leben von anderen.
Derzeit wird nur MySQL unterstützt.

Methodenname: import_csv_to_mysqltable

Parameter, die es hat:

  • Benutzer: str
  • Gastgeber: str
  • Datenbank: str
  • csv_path: str
  • service_instance: str = None
  • Tabelle: str

Benutzer: Benutzername,
Host: Host,
Datenbank: Datenbankname,
csv_path: relativer oder absoluter Pfad zur CSV-Datei.

Tabelle: Tabellenname. Wenn er nicht vorhanden ist, wird die Tabelle gemäß der CSV-Datei erstellt.
Sie müssen sich keine Gedanken über Datentypen machen. Es wird damit umgehen.

cd sqthon

Das obige ist der detaillierte Inhalt vonStellen Sie eine Verbindung zu mehreren Datenbanken her, erstellen oder generieren Sie SQL-Abfragen, analysieren oder visualisieren Sie.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn