Commit graph

108 commits

Author SHA1 Message Date
go-jet
47545ce571 Add WITH RECURSIVE support. 2021-12-26 11:34:57 +01:00
go-jet
72e8d7d584 Add FROM clause support for UPDATE statements 2021-12-08 18:13:58 +01:00
go-jet
e8f4c2b31b Add SQLBuilder support for SQLite databases. 2021-10-21 13:40:26 +02:00
go-jet
d197956271 Avoid unnecessary double wrapping of SELECT statement when used as single function parameter. 2021-10-21 13:40:26 +02:00
go-jet
22b2901336 Move RETURNING clause to internal/jet so it can be reused for sqlite implementation. 2021-10-21 13:40:26 +02:00
go-jet
0d418890ab Qrm refactor
- Allow custom types Scan method to read values returned by the driver rather then the value from intermediate Null types. Scan to intermidiate Null types removed.
- Better error handling
2021-10-15 17:43:10 +02:00
go-jet
555ec293fb Add ability to exclude columns from ColumnList 2021-10-04 11:49:13 +02:00
go-jet
8864667f47 Add the ability to fully customize jet generated files. 2021-07-27 17:39:21 +02:00
go-jet
87373f1425 Test fix 2021-05-17 14:53:53 +02:00
go-jet
38541522e6 Fix linter errors 2021-05-16 19:10:43 +02:00
go-jet
3021a6a0fd Add support to retrieve Rows from statement
Rows statement method executes statements over db connection/transaction and returns Rows.
2021-05-16 18:46:50 +02:00
go-jet
a5b7769589 Add RawStatement support
RawStatement method creates new sql statements from raw query and optional map of named arguments.
2021-05-15 11:54:41 +02:00
go-jet
7af9072b8d Allow Raw helper to accept named arguments 2021-05-14 12:15:35 +02:00
go-jet
f30cbb9e89 Add UUID helper function
UUID creates string literal expression from uuid object.
uuid can be any uuid type with a String method.
2021-05-11 13:20:07 +02:00
go-jet
256be8a406 [BUG] Update statement reserved word not escaped
Update statement, using MODEL struct, now generates escaped SQL identifier if column name is reserved word.
2021-05-09 17:17:14 +02:00
go-jet
92d02fef78 Add DECIMAL constructor for Float literal.
DECIMAL constructor is used to pass a decimal number to the SQL query without precision loss.
2021-05-09 16:25:54 +02:00
go-jet
4ef0113f6b Add implicit cross join support 2021-05-03 18:48:15 +02:00
go-jet
0cba1f6401 Lateral - initial commit. 2021-04-30 14:02:49 +02:00
go-jet
38776e35ab Remove methods from Table interface that affects receiver object
Modifying SQL builder receiver object can produce unwanted side effects.
2021-04-30 14:02:49 +02:00
Joonas Haapsaari
1e511654fd Schema rename support
- Support for renaming table schemas
 * Table support for renaming schema
 * Empty schema name is left out (using default schema for the
   database connection)
 * Generated code support for obtaining a version of the table with
   renamed schema, similarly as the `AS` function works
 * Unit tests for setting and clearing the schema name
2021-04-30 14:02:49 +02:00
go-jet
7bafa1ffef
Merge pull request #73 from DevDevious/unsigned-integers
Unsigned integer literal support
2021-02-23 14:09:47 +01:00
DevDevious
6b06bc6a37 Added unsigned integer literals. 2021-02-22 13:58:28 -05:00
tolfino
bc104d7dbb Add support for custom functions.
This allows expressions like jet.Func("FOO", String("test")) to be
emitted as FOO($1).
2020-10-02 08:53:26 -07:00
go-jet
2ada2ff69b Add go mod support. 2020-06-27 18:48:19 +02:00
Anis Jonischkeit
40eb2b80c4
fix documentation 2020-06-08 21:22:22 +10:00
go-jet
d19fdea86d Additional MySQL WITH statement tests. 2020-06-01 20:30:09 +02:00
go-jet
e54e8fcabf Rename LoggableStatement to PrintableStatement. 2020-06-01 18:22:24 +02:00
go-jet
ac0fd9a6f6 Fix unit tests. 2020-05-24 18:09:16 +02:00
go-jet
fb8607da29 Add support for WITH statements and Common Table Expressions. 2020-05-24 17:55:28 +02:00
go-jet
0d3ec872d6 Add support for automatic query logging. 2020-05-10 11:41:07 +02:00
go-jet
5d742837f1 Use testify/require instead of testify/assert for tests. 2020-05-09 11:00:22 +02:00
go-jet
ebcbadef24 Add new typesafe SET operator for UPDATE statement. 2020-05-09 10:49:09 +02:00
go-jet
980b9b6aac Add ON DUPLICATE KEY UPDATE support (MySQL). 2020-05-03 20:46:21 +02:00
go-jet
926b88ed40 Add reserved words for MySQL. 2020-05-02 22:15:38 +02:00
go-jet
241ea0d6d6 Gen files idempotence test clean up. 2020-04-13 10:18:14 +02:00
go-jet
14e1863456 [postgres] Add support for ON CONFLICT clause 2020-04-12 18:53:57 +02:00
go-jet
3019fdbbb2 [bug] Escape reserved words used as identifier. 2020-02-16 10:25:21 +01:00
go-jet
63c1fd6430 [bug] Fix crash on generating enum sql builder files when enum contains numeric values. 2020-02-15 11:20:51 +01:00
go-jet
3efbb0ccd9 Replace gotest.tools with github.com/stretchr/testify. 2020-02-11 10:25:13 +01:00
go-jet
3013dc3647 Add support for PostgreSQL interval column 2020-02-09 18:37:48 +01:00
go-jet
74725e8e11 Clean up. 2019-12-14 18:32:40 +01:00
go-jet
2487c48428 Fix linter errors. 2019-12-08 11:07:49 +01:00
go-jet
57aa62f483 Simplified creation of operator expression. 2019-12-07 18:54:30 +01:00
go-jet
d1970b3a55 MySQL interval with date/time expression arithmetic. 2019-12-01 18:34:44 +01:00
go-jet
15acb1c326 QRM returns qrm.ErrNoRows when scanning into struct destination and query result set is empty. 2019-12-01 18:34:44 +01:00
go-jet
0b00a6b12c Some linter errors. 2019-12-01 18:34:44 +01:00
go-jet
f9efee77ff QRM returns sql.ErrNoRows when scanning into struct destination and query result set is empty. 2019-10-12 18:45:09 +02:00
go-jet
e09c78dec3 New MIN/MAX functions that accepts any expression type. 2019-09-30 14:42:04 +02:00
go-jet
29f43e5fe8 Rename execution package to qrm (Query Result Mapping). 2019-09-27 11:46:31 +02:00
go-jet
92de03d4b3 GroupKeyInfo improvements for parent specified primary keys. 2019-09-27 11:34:12 +02:00