Query your DB using natural language instead of SQL queries
Project description
TalkToSQL
TalkToSQL is an CLI tool that lets you query your DB with natural language instead of SQL queries.
Usage
$ talktosql learn
Successfully saved the DB Schema Info to /Users/woniesong92/.talktosql_schema_info
$ talktosql ask --q "Who owns a dog?"
SELECT o.first_name, o.last_name FROM Owners o JOIN Pets p ON o.owner_id = p.owner_id WHERE p.species = 'dog';
+------------+-----------+
| first_name | last_name |
+------------+-----------+
| John | Doe |
| Jane | Doe |
| Bob | Smith |
+------------+-----------+
$ talktosql ask --q "Is there anyone who owns a cat named Mittens?"
SELECT o.first_name, o.last_name FROM Owners o JOIN Pets p ON o.owner_id = p.owner_id WHERE p.species = 'cat' AND p.pet_name = 'Mittens';
+------------+-----------+
| first_name | last_name |
+------------+-----------+
| Alice | Johnson |
+------------+-----------+
Quickstart
-
Install the package
pip install talktosql -U -
Set the environment variables
You can create a
.envfile in your local directory to get kickstarted.OPENAI_API_KEY="SOME_API_KEY" OPENAI_ORG_ID="SOME_ORG_ID" OPENAI_MODEL_NAME="gpt-4" TALKTOSQL_DATABASE_URL="mysql://myuser:mypassword@localhost/mydb" TALKTOSQL_DATABASE_NAME="mydb"
Alternatively, you can run these in your terminal or set these in your terminal config (~/.zshrc)
export OPENAI_API_KEY="SOME_API_KEY" export OPENAI_ORG_ID="SOME_ORG_ID" export OPENAI_MODEL_NAME="gpt-4" export TALKTOSQL_DATABASE_URL="mysql://myuser:mypassword@localhost/mydb" # export TALKTOSQL_DATABASE_URL="postgresql://myuser:mypassword@localhost/mydb" export TALKTOSQL_DATABASE_NAME="mydb"
- Get the value for
OPENAI_API_KEYfrom OpenAI API Keys - Get the value for
OPENAI_ORG_IDfrom OpenAI Org Settings
- Get the value for
-
Help TalktoSQL learn your DB Schema. This will save your DB schema info to a file in your home directory (
~/.talktosql_schema_info)talktosql learn -
Query your DB in English intead of an SQL query
talktosql ask --q "how many dogs are there?"
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 talktosql-0.0.1.tar.gz.
File metadata
- Download URL: talktosql-0.0.1.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
93b1504e10c7b457d33f0868bd5c4a552b510b2d6d8c8cb692db2d71d5b0608a
|
|
| MD5 |
f758a5fd1de95552626a2230401d4cff
|
|
| BLAKE2b-256 |
6c8f402bb21eaf47bcefcaa68ae1c563f4684873c7a130a74eee5045aa56b6d5
|
File details
Details for the file talktosql-0.0.1-py3-none-any.whl.
File metadata
- Download URL: talktosql-0.0.1-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1427d11399281d21c8246606a5746ded9bad2f233e5453bd038783ce89ecfd80
|
|
| MD5 |
30afa0f451144f3c7cd65930151c3f5c
|
|
| BLAKE2b-256 |
d4c2946a9ff9e85180152dac50b71152078fa8ace2836e0792c4a860f4c48803
|