feat(mysql): native SQL execution — fix #41 type decoding, in-process restore, .sql open-with (#42)

Fixes #41.

MySQL columns now decode by their declared type instead of a blind try_get chain,
so every non-string type (integers, DECIMAL, BIT, YEAR, DATE/TIME/DATETIME/TIMESTAMP)
renders its value instead of NULL. MySQL restore runs in-process over the sqlx driver
(no bundled MariaDB client, so MySQL 8 caching_sha2_password works) and the Clean toggle
is implemented. .sql files can be opened with Gridline from the OS file manager.

Verified: cargo test --lib 442 passed / 0 failed; bun run test 133 files / 1151 tests
exit 0; tsc clean; both live MySQL 8 integration tests pass with the bundled CLI hidden.
This commit is contained in:
2026-09-29 08:52:47 +08:00
committed by GitHub
parent ce4a73b0bb
commit 88e7e45818
36 changed files with 2265 additions and 141 deletions
+10
View File
@@ -27,6 +27,16 @@
"active": true,
"targets": "all",
"resources": ["resources/pg_tools/*", "resources/mysql_tools/*"],
"fileAssociations": [
{
"ext": ["sql"],
"name": "SQL Script",
"description": "SQL script",
"mimeType": "application/sql",
"role": "Editor",
"rank": "Alternate"
}
],
"macOS": {
"signingIdentity": "-",
"hardenedRuntime": true,