DairyBrainUtils ist ein PyPI-Paket mit einigen grundlegenden Funktionalitäten für die Interaktion mit einer PostgreSQL-Datenbank.
Derzeit wird es auf TestPyPI gehostet. Wenn die TestPyPI-Distribution bereinigt wurde, wenden Sie sich bitte an den Autor, um sie erneut hochzuladen.
Um die neueste Version des Pakets zu installieren, verwenden Sie den Befehl in PyPI.
Wenn der obige Link defekt ist, versuchen Sie Folgendes:
pip install DairyBrainUtils
Nach der Installation empfehlen wir Ihnen, das Paket mit import DairyBrainUtils as dbu
zu importieren.
(Update: Dies wurde behoben, als wir es auf das offizielle PyPI hochgeladen haben) Wenn Sie eine Fehlermeldung wie diese sehen:
ERROR: Could not find a version that satisfies the requirement DairyBrainUtils-ruipeterpan==0.3.0 (from versions: 0.0.3, 0.0.4, 0.1.0, 0.1.1, 0.1.2, 0.1.3, 0.2.0, 0.2.1)
ERROR: No matching distribution found for DairyBrainUtils-ruipeterpan==0.3.0
Versuchen Sie es noch einmal. TestPyPI ist seltsam.
Eine Liste der verfügbaren Funktionen ist:
get_engine(credentials)
check_if_database_exists(db_engine)
create_table_if_doesnt_exist(db_engine, table_name, sql_statement)
create_table(db_engine, table_name, sql_statement)
create_schema(db_engine, schema_name)
create_sequence(db_engine, sequence_name)
get_next_from_sequence(db_engine, sequence_name)
populate_table_from_csv(table_name, csv_location, db_engine)
execute_statement(statement, db_engine)
drop_table(table_name, db_engine)
has_table(table_name, db_engine)
get_engine(credentials)
Nimmt credentials
eines Wörterbuchs mit den Schlüsseln auf: [dialect, user, password, host, port, db_name, log]
und übergibt diese Anmeldeinformationen an sqlalchemy.create_engine(), um eine neue Engine-Instanz zu erstellen.
dialect
: String. Ein Datenbankdialekt. Derzeit unterstützt dieses Paket nur postgresql
.user
: Zeichenfolge. Der Benutzername eines Benutzers in der Datenbank.password
: String. Das Kennwort, das dem Benutzer zugeordnet ist.host
: Zeichenfolge. Hostname.port
: Ganzzahl. Portnummer.db_name
: Zeichenfolge. Ein Datenbankname.log
: Boolescher Wert. Wenn True, protokolliert die Engine alle Anweisungen sowie einen repr() ihrer Parameterlisten im Engine-Logger, der standardmäßig sys.stdout ist.check_if_database_exists(db_engine)
Verwenden Sie die vorhandene SQLalchemy-Funktionalität, um zu überprüfen, ob die Datenbank vorhanden ist. Gibt „True“ zurück, wenn die Datenbank vorhanden ist, andernfalls „False“.
create_table_if_doesnt_exist(db_engine, table_name, sql_statement)
Erstellt eine Tabelle mit table_name
in der Datenbank, wenn keine Tabelle mit dem angegebenen Namen vorhanden ist.
sql_statement
ist eine CREATE TABLE
Anweisung, die die Kopfzeilen der zu erstellenden Tabelle angibt.
create_table(db_engine, table_name, sql_statement)
Erstellt eine Tabelle mit Tabellenname in der Datenbank.
sql_statement
ist eine CREATE TABLE
Anweisung, die die Kopfzeilen der zu erstellenden Tabelle angibt.
create_schema(db_engine, schema_name)
Erstellt ein Schema mit dem angegebenen schema_name
in der angegebenen Datenbank.
create_sequence(db_engine, sequence_name)
Erstellt eine Sequenz in der Datenbank.
get_next_from_sequence(db_engine, sequence_name)
Gibt die nächste Ganzzahl-ID in der angegebenen Sequenz zurück (vorausgesetzt, eine existiert).
populate_table_from_csv(table_name, csv_location, db_engine)
Nimmt einen csv_location
, den Dateipfad einer CSV-Datei, auf und füllt die Tabelle mit dem angegebenen table_name
(vorausgesetzt, einer existiert) in der angegebenen Datenbank.
execute_statement(statement, db_engine)
Führt eine SQL-Anweisung in der angegebenen Datenbank aus.
drop_table(table_name, db_engine)
Löscht eine Tabelle mit table_name
in der angegebenen Datenbank.
has_table(table_name, db_engine)
Gibt True
zurück, wenn in der angegebenen Datenbank eine Tabelle mit dem angegebenen table_name
vorhanden ist, andernfalls wird False
zurückgegeben
In diesem Tutorial finden Sie Anleitungen zum Packen eines Python-Projekts und zum Hochladen in den PyPI (Python Package Index). Dies ist ein Beispielprojekt mit dem besten Format.
Um eine neue Version des Pakets zu veröffentlichen, bearbeiten Sie ./DairyBrainUtils/__init__.py
, ändern Sie die Versionsnummer in setup.py
und veröffentlichen Sie die Distributionsarchive gemäß der Anleitung.
Genauer gesagt: Gehen Sie wie folgt vor:
python3 -m pip install --upgrade setuptools wheel
python3 setup.py sdist bdist_wheel
Nun sollte ein dist
-Verzeichnis mit zwei Dateien erstellt werden. Wenn das Paket auf einem lokalen Server gehostet werden soll, nehmen Sie einfach die .whl
Datei und installieren Sie das Paket mit pip
.
Um die Distributionspakete auf TestPyPI hochzuladen, gehen Sie wie folgt vor:
python3 -m pip install --upgrade twine
python3 -m twine upload --repository testpypi dist/*
Verwenden Sie __token__
, wenn Sie zur Eingabe des Benutzernamens aufgefordert werden. Verwenden Sie für das Passwort den Token-Wert, einschließlich des Präfixes pypi-
.