pip install git+https://github.com/attapon-th/dbhelper@latest
dbper --help
# mysql
# dsn=mysql+pymysql://user:pass@host:port/dbname
pip install pymysql
# postgres
# dsn=postgresql+psycopg2://user:pass@host:port/dbname
pip install psycopg2-binary
# vertica
# dsn=vertica+vertica_python://user:pass@host:port/dbname
pip install git+https://github.com/attapon-th/sqlalchemy-vertica-python.git@latest
# other sqlalchemy support
other sqlalchemy support https://docs.sqlalchemy.org/en/20/core/engines.html
export DB_DSN=vertica+vertica_python://user:pass@host:port/dbname
dbper process test.sql
# or
dbper process --dsn "vertica+vertica_python://user:pass@host:port/dbname" test.sql
example test.sql
****
-- test.sql
-- create table
CREATE TABLE IF NOT EXISTS test (
id int,
name text
);
-- insert data
INSERT INTO test (id, name) VALUES
(1, 'a'),
(2, 'b'),
(3, 'c');
-- select data
SELECT * FROM test;
export DB_DSN=vertica+vertica_python://user:pass@host:port/dbname
dbper csv \
--output test.csv
"SELECT * FROM test"
# or
dbper csv \
--dsn "vertica+vertica_python://user:pass@host:port/dbname" \
--output test.csv
"SELECT * FROM test"
export DB_DSN=vertica+vertica_python://user:pass@host:port/dbname
dbper parquet \
--output test.parquet \
"SELECT * FROM test"
# or
dbper parquet \
--dsn "vertica+vertica_python://user:pass@host:port/dbname" \
--output test.parquet \
"SELECT * FROM test"