SQL editor support for formatting, syntax highlighting and code completion of SQL in cell magic, line magic, python string and file editor.
Project description
jupyterlab-sql-editor
A JupyterLab extension providing:
- SQL formatter
- Automatic extraction of database schemas
- Auto-completion triggered by
tab
ordot
for:- table names
- table aliases
- table joins
- nested column names
- functions
- Syntax highlighting for:
- line magic
- cell magic
- Python strings
IPython magic for:
- Spark SQL
- Trino
Une extension à JupyterLab qui contribue:
- Formattage de SQL
- Extraction automatique du schéma de base de données
- Complétion automatique suivant un
tab
oudot
des:- noms de tables
- alias de tables
- jointures de tables
- noms de colones imbriquées
- fonctions
- Surbrillance de la syntaxe:
- ligne magic
- cellule magic
- chaînes de caractères Python
IPython magic pour:
- Spark SQL
- Trino
Execute and output your query results into an interactive data grid / Execution et affichage des résultats dans une grille interactive
Output as JSON / Résultats en JSON
Auto suggest column names and sub-fields / Suggestion automatique des noms de colones et sous champs
Auto suggest JOINs on matching column names / Suggestion automatique de jointures sur nom de colones
Format and show syntax highlighting in Notebook code cells / Formattage et surbrillance de la syntaxe des cellules
Works in Python strings / Fonctionne à l'intérieur d'une chaînes de caractères Python
Capture your Spark query as a Dataframe or a temporary view / Capture de la requête dans un Dataframe ou vue temporaire
Use jinja templating to create re-usable SQL / Utilisation de Jinja pour création de requêtes SQL réutilisables
Installation
Follow the installation instructions in CONTRIBUTING
Suivre les instructions d'installation dans CONTRIBUTING
Parameters / Paramètres
Parameter usage example:
%%sparksql -c -l 10 --dataframe df
<QUERY>
sparksql
Parameter | Description |
---|---|
--database NAME |
Spark database to use. |
-l LIMIT --limit LIMIT |
The maximum number of rows to display. A value of zero is equivalent to --output skip |
-r all|local|none --refresh all|local|none |
Force the regeneration of the schema cache file. The local option will only update tables/views created in the local Spark context. |
-d NAME --dataframe NAME |
Capture dataframe in a local variable named NAME . |
-c --cache |
Cache dataframe. |
-e --eager |
Cache dataframe with eager load. |
-v VIEW --view VIEW |
Create or replace a temporary view named VIEW . |
-o sql|json|html|aggrid|grid|text|schema|skip|none --output sql|json|html|aggrid|grid|text|schema|skip|none |
Output format. Defaults to html. The sql option prints the SQL statement that will be executed (useful to test jinja templated statements). |
-s --show-nonprinting |
Replace none printable characters with their ascii codes (LF -> \x0a ) |
-j --jinja |
Enable Jinja templating support. |
-b --dbt |
Enable DBT templating support. |
-t LIMIT --truncate LIMIT |
Truncate output. |
-m update|complete --streaming_mode update|complete |
The mode of streaming queries. |
-x --lean-exceptions |
Shortened exceptions. Might be helpful if the exceptions reported by Spark are noisy such as with big SQL queries. |
trino
Parameter | Description |
---|---|
-c NAME --catalog NAME |
Trino catalog to use. |
-s NAME --schema NAME |
Trino schema to use. |
-l LIMIT --limit LIMIT |
The maximum number of rows to display. A value of zero is equivalent to --output skip |
-r all|none --refresh all|none |
Force the regeneration of the schema cache file. |
-d NAME --dataframe NAME |
Capture dataframe in a local variable named NAME . |
-o sql|json|html|aggrid|grid|text|schema|skip|none --output sql|json|html|aggrid|grid|text|schema|skip|none |
Output format. Defaults to html. The sql option prints the SQL statement that will be executed (useful to test jinja templated statements). |
-s --show-nonprinting |
Replace none printable characters with their ascii codes (LF -> \x0a ). |
-j --jinja |
Enable Jinja templating support. |
-t LIMIT --truncate LIMIT |
Truncate output. |
-x STATEMENT --raw STATEMENT |
Run statement as is. Do not wrap statement with a limit. Use this option to run statement which can't be wrapped in a SELECT/LIMIT statement. For example EXPLAIN, SHOW TABLE, SHOW CATALOGS. |
Security Vulnerability Reporting
If you believe you have identified a security vulnerability in this project, please send an email to the project team at contact@cyber.gc.ca, detailing the suspected issue and any methods you've found to reproduce it.
Please do NOT open an issue in the GitHub repository, as we'd prefer to keep vulnerability reports private until we've had an opportunity to review and address them.
Rapports sur les vulnérabilités de sécurité
Si vous pensez avoir identifié une faille de sécurité dans ce projet, veuillez envoyer un courriel à l'équipe du projet à contact@cyber.gc.ca, en détaillant le problème soupçonné et les méthodes que vous avez trouvées pour le reproduire.
Veuillez NE PAS ouvrir un problème dans le GitHub repo, car nous préférerons garder les rapports de vulnérabilités privés jusqu'à ce que nous ayons eu l'occasion de les examiner et de les résoudre.
Shout-outs / Remerciements
Many thanks to the contributors of these projects / Merci à tous les contributeurs des projets suivants:
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
Hashes for jupyterlab_sql_editor-0.1.72.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6bc85a325e381b640bd9a1e12f0449e921e49ef0a0ed764c5c9c7533d994df1e |
|
MD5 | 867d8f9d7f6e833b118743c613c75f16 |
|
BLAKE2b-256 | 3c4df891e50e4376ade138438935048ed7ccba3105b80c09507cf7ae599e3978 |
Hashes for jupyterlab_sql_editor-0.1.72-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3f1b46f21acd8c04aed6a659cad8eddf8cf13fa8f760704dabcd0be157a00416 |
|
MD5 | b72b7663cb6747e45efee16c2550d490 |
|
BLAKE2b-256 | f439f43050da03cfcd210b45247902cee1d2df470a031e241405dc73cd0cd8af |