Skip to content

Commit b991960

Browse files
Add SQL Notebooks support (.exabook files)
Interactive notebooks with SQL code cells and markdown documentation. SQL cells execute against the active Exasol connection with inline HTML result tables showing row counts, timing, and execution order. - NotebookSerializer: JSON-based .exabook format with transient outputs - NotebookController: executes cells via QueryExecutor with cancellation - CodeLens hidden in notebook cells (they have native run buttons) - Demo notebook in examples/ - Bump version to 1.4.0 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 81d5600 commit b991960

File tree

10 files changed

+268
-370
lines changed

10 files changed

+268
-370
lines changed

.vscodeignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,6 @@ esbuild.mjs
1919
CLAUDE.md
2020
.claude/**
2121
specs/**
22+
examples/**
2223
.serena/**
2324
vendor/**

CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
All notable changes to the "Exasol" extension will be documented in this file.
44

5-
## [1.3.2] - 2026-03-24
5+
## [1.4.0] - 2026-03-24
6+
7+
### Added
8+
- **SQL Notebooks** — interactive `.exabook` notebooks with SQL code cells, inline HTML result tables, markdown documentation cells, execution order tracking, and cancellation support
9+
- CodeLens "Execute" links are now hidden in notebook cells (notebooks have their own run buttons)
610

711
### Changed
812
- Release workflow now automatically publishes to the VS Marketplace
13+
- Removed deprecated `vscode-test` dependency (replaced by `@vscode/test-electron`)
914

1015
## [1.3.0] - 2026-03-18
1116

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ A Visual Studio Code extension for working with Exasol databases. Provides datab
2020
- **Object actions** — right-click to preview data, show DDL, generate SELECT, describe table
2121
- **Results viewer** — sortable, filterable grid with CSV export and cell inspection
2222
- **Query history** — automatic tracking with execution time, row counts, and error indicators
23+
- **SQL Notebooks** — interactive `.exabook` notebooks with SQL cells, inline results, and markdown documentation
2324
- **SQL formatting** — configurable keyword case, indentation, and statement spacing
2425
- **Session management** — active schema tracking, persistent state across restarts
2526

@@ -29,6 +30,7 @@ A Visual Studio Code extension for working with Exasol databases. Provides datab
2930
|--------|---------------|-----|
3031
| Execute query | `Ctrl+Enter` | `Cmd+Enter` |
3132
| Execute selection | `Ctrl+Shift+Enter` | `Cmd+Shift+Enter` |
33+
| Execute entire script | `Ctrl+Alt+Enter` | `Cmd+Alt+Enter` |
3234
| Find database object | `Ctrl+Shift+F` (objects view) | `Cmd+Shift+F` (objects view) |
3335

3436
## Configuration

examples/demo.exabook

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
[
2+
{
3+
"kind": 1,
4+
"language": "markdown",
5+
"value": "# Exasol SQL Notebook Demo\n\nThis notebook demonstrates interactive SQL execution against Exasol.\nMake sure you have an active connection before running cells."
6+
},
7+
{
8+
"kind": 2,
9+
"language": "exasol-sql",
10+
"value": "SELECT CURRENT_TIMESTAMP, CURRENT_USER, CURRENT_SCHEMA"
11+
},
12+
{
13+
"kind": 1,
14+
"language": "markdown",
15+
"value": "## Browse schemas"
16+
},
17+
{
18+
"kind": 2,
19+
"language": "exasol-sql",
20+
"value": "SELECT SCHEMA_NAME, SCHEMA_OWNER\nFROM SYS.EXA_SCHEMAS\nORDER BY SCHEMA_NAME"
21+
},
22+
{
23+
"kind": 1,
24+
"language": "markdown",
25+
"value": "## Check active sessions"
26+
},
27+
{
28+
"kind": 2,
29+
"language": "exasol-sql",
30+
"value": "SELECT SESSION_ID, USER_NAME, STATUS, CLIENT\nFROM EXA_ALL_SESSIONS\nORDER BY SESSION_ID"
31+
}
32+
]

0 commit comments

Comments
 (0)