DairyBrainUtils adalah paket PyPI dengan beberapa fungsi dasar untuk berinteraksi dengan database PostgreSQL.
Untuk saat ini, ini dihosting di TestPyPI. Jika distribusi TestPyPI sudah dibersihkan, silakan hubungi penulis untuk mengunggahnya kembali.
Untuk menginstal paket versi terbaru, gunakan perintah di PyPI.
Jika tautan di atas rusak, coba:
pip install DairyBrainUtils
Setelah terinstal, kami menyarankan Anda untuk mengimpor paket dengan import DairyBrainUtils as dbu
.
(Pembaruan: Ini telah teratasi saat kami mengunggah ke PyPI resmi) Jika Anda melihat pesan kesalahan seperti ini:
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
coba instal sekali lagi. TestPyPI aneh.
Daftar fungsi yang tersedia untuk digunakan adalah:
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)
Mengambil credentials
kamus dengan kunci: [dialect, user, password, host, port, db_name, log]
, dan meneruskan kredensial ini ke sqlalchemy.create_engine() untuk membuat instance mesin baru.
dialect
: Tali. Dialek basis data. Saat ini paket ini hanya mendukung postgresql
.user
: Tali. Nama pengguna pengguna di database.password
: Tali. Kata sandi yang dikaitkan dengan pengguna.host
: Tali. Nama tuan rumah.port
: Bilangan bulat. Nomor pelabuhan.db_name
: Tali. Nama basis data.log
: Boolean. Jika Benar, mesin akan mencatat semua pernyataan serta repr() daftar parameternya ke logger mesin, yang defaultnya adalah sys.stdout.check_if_database_exists(db_engine)
Gunakan fungsionalitas sqlalchemy yang ada untuk memeriksa apakah database ada. Mengembalikan 'Benar' jika database ada, 'Salah' jika tidak
create_table_if_doesnt_exist(db_engine, table_name, sql_statement)
Membuat tabel dengan table_name
di database jika tabel dengan nama yang diberikan tidak ada.
sql_statement
adalah pernyataan CREATE TABLE
yang menentukan header tabel yang akan dibuat.
create_table(db_engine, table_name, sql_statement)
Membuat tabel dengan nama_tabel di database.
sql_statement
adalah pernyataan CREATE TABLE
yang menentukan header tabel yang akan dibuat.
create_schema(db_engine, schema_name)
Membuat skema dengan schema_name
yang diberikan dalam database yang ditentukan.
create_sequence(db_engine, sequence_name)
Membuat urutan dalam database.
get_next_from_sequence(db_engine, sequence_name)
Mengembalikan id bilangan bulat berikutnya dalam urutan tertentu (dengan asumsi ada)
populate_table_from_csv(table_name, csv_location, db_engine)
Mengambil csv_location
, jalur file dari file csv, dan mengisi tabel dengan table_name
yang diberikan (dengan asumsi ada) dalam database yang ditentukan.
execute_statement(statement, db_engine)
Menjalankan pernyataan SQL dalam database yang ditentukan.
drop_table(table_name, db_engine)
Menghapus tabel dengan table_name
di database yang ditentukan.
has_table(table_name, db_engine)
Mengembalikan True
jika ada tabel dengan table_name
yang diberikan dalam database yang ditentukan, mengembalikan False
jika tidak
Lihat tutorial ini untuk panduan mengemas proyek Python dan mengunggahnya ke PyPI (Indeks Paket Python). Ini adalah contoh proyek dengan format terbaik.
Untuk menerbitkan versi baru paket, edit ./DairyBrainUtils/__init__.py
, ubah nomor versi di setup.py
, dan publikasikan arsip distribusi dengan mengikuti tutorial.
Lebih khusus lagi, lakukan:
python3 -m pip install --upgrade setuptools wheel
python3 setup.py sdist bdist_wheel
Sekarang, direktori dist
harus dibuat dengan dua file. Jika paket akan dihosting di server lokal, ambil saja file .whl
dan gunakan pip
untuk menginstal paket.
Untuk mengunggah paket distribusi ke TestPyPI, lakukan:
python3 -m pip install --upgrade twine
python3 -m twine upload --repository testpypi dist/*
Gunakan __token__
saat diminta memasukkan nama pengguna. Untuk kata sandi, gunakan nilai token, termasuk awalan pypi-
.