Add your description here
Project description
TSQL
A Python Environment Database Module Generator
Installation
to install using pip:$ pip install tsql-yaboiteedoh
Usage
the bash command:$ tsql
Runs the application in the current directory, allowing you to search it for valid configuration files or generate a new database where you are
To get the most out of that I have it installed into a toolbox .venv, and have added this function to my ~/.bashrc script:
sql() {
(
source '/home/teedoh/devkit/.venv/bin/activate'
tsql
)
}
Saving the configuration saves to the current directory under (database name).tsql Default behavior is to not override previous saves, to enable easier version control
Exporting the configuration folder dumps a python module named after the database into the current directory, which you can reach with
from {database name} import Database
once instantiated, you can reach into the database with the associated functions on the table objects
db = Database()
with db:
table_entries = db.{table name}.read_all()
Functionality
0.1.9
- support for datatypes
- TEXT
- INT
- BOOL
- Groups
- search multiple columns for the same value
- Filters
- return based on a combination of column and group values
- parameters
- NOT NULL
- PRIMARY KEY
- AUTOINCREMENT
- Column Types
- functions with dataclass object returns for unique column values
- functions with list of dataclass object returns for shared column values
- any column not labeled 'returns' is considered passive
- these will exist on the dataclass object but not have an associated query function
- Column references
- these will update dynamically as you alter your table config
0.1.10
- export module alterations
- to use the database object via context manager
- to remove create tables on database object init
- instead use
database.init_tables()
0.2.0
- expanded data types and parameters
- data types
- TEXT
- INTEGER
- REAL
- BLOB
- parameters
- PRIMARY KEY
- AUTOINCREMENT
- NOT NULL
- CHECK
- Saves expressions as entered
- DEFAULT
- Including support for
- CURRENT_TIME
- CURRENT_DATE
- CURRENT_TIMESTAMP
- Including support for
- COLLATE (on TEXT columns)
- data types
- config validation
- enforces unique table/column/filter/group names in their proper scopes
- enforces non-empty groups and filters
- More to come as cases emerge
0.3.0
- Hidden columns which will not appear on the dataclass object
- Table dataclasses no longer use dataclass module
- reading and updating values on hidden classes require rowid to query
0.4.0 (planned)
- Join tables
0.5.0 (planned)
- Built in version control system
- data migration tools
1.0.0 (planned)
- Interface overhaul
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tsql_yaboiteedoh-0.3.0.tar.gz.
File metadata
- Download URL: tsql_yaboiteedoh-0.3.0.tar.gz
- Upload date:
- Size: 50.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bdb8b863c43113448f83af5e15ae5dcc829240a2b22b7564a8338da3313462a8
|
|
| MD5 |
4f5399f0affddf0f5b961cd97664cbab
|
|
| BLAKE2b-256 |
e428f76b1622165bcfdc6f882d68c6b1cdb0bfc73e0bb05d89438cbde1439d36
|
File details
Details for the file tsql_yaboiteedoh-0.3.0-py3-none-any.whl.
File metadata
- Download URL: tsql_yaboiteedoh-0.3.0-py3-none-any.whl
- Upload date:
- Size: 62.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a3f377c1025b0d6f66698ff43944c24f2b26703779cd5766623135b1eba84df
|
|
| MD5 |
64bf346315230102057ed29e6b8b4ba4
|
|
| BLAKE2b-256 |
8899145b1fac4c643b8d39e092411025fdb84d26aacd4b42ce312cece2a6704a
|