Skip to content

Commit c93caff

Browse files
committed
endtoend: cover MySQL syntax newly supported by marino v0.3.0
JSON_TABLE in schema files, expression DEFAULTs like (UTC_TIMESTAMP()) and (CURRENT_TIMESTAMP + INTERVAL 30 DAY), and trigger/function/ procedure/event DDL in MySQL schemas.
1 parent 7fd047b commit c93caff

18 files changed

Lines changed: 292 additions & 0 deletions

File tree

internal/endtoend/testdata/mysql_ddl_routines/mysql/go/db.go

Lines changed: 31 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/mysql_ddl_routines/mysql/go/models.go

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/mysql_ddl_routines/mysql/go/query.sql.go

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
-- name: GetCollection :one
2+
SELECT id, updated_at FROM collections WHERE id = ?;
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
CREATE TABLE collections (
2+
id BIGINT PRIMARY KEY,
3+
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
4+
);
5+
6+
CREATE TRIGGER update_timestamp_collections BEFORE UPDATE ON collections FOR EACH ROW SET NEW.updated_at = CURRENT_TIMESTAMP;
7+
8+
CREATE FUNCTION uuidv4() RETURNS CHAR(36) NO SQL RETURN LOWER(HEX(RANDOM_BYTES(4)));
9+
10+
CREATE PROCEDURE touch_collections() UPDATE collections SET updated_at = NOW();
11+
12+
CREATE EVENT clear_stale_collections ON SCHEDULE EVERY 1 HOUR DO DELETE FROM collections WHERE updated_at < CURRENT_TIMESTAMP - INTERVAL 30 DAY;
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"version": "1",
3+
"packages": [
4+
{
5+
"path": "go",
6+
"sql_package": "database/sql",
7+
"sql_driver": "github.com/go-sql-driver/mysql",
8+
"engine": "mysql",
9+
"name": "querytest",
10+
"schema": "schema.sql",
11+
"queries": "query.sql"
12+
}
13+
]
14+
}

internal/endtoend/testdata/mysql_default_expression/mysql/go/db.go

Lines changed: 31 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/mysql_default_expression/mysql/go/models.go

Lines changed: 15 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/mysql_default_expression/mysql/go/query.sql.go

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
-- name: GetExpiration :one
2+
SELECT id, created_at, expiry FROM expirations WHERE id = ?;

0 commit comments

Comments
 (0)