Knut Wannheden
b61f2d0c9b
[ #8593 ] DB2 ranking functions require an ORDER BY clause
2019-05-03 16:01:07 +02:00
Knut Wannheden
554b8fcd1e
[ #8596 ] Support more DML for MySQL
...
Added some missing @Support annotations.
2019-05-03 15:48:55 +02:00
Knut Wannheden
58cb9e5692
[ #8595 ] Support more MySQL DDL
...
CREATE SCHEMA, CREATE OR REPLACE VIEW, and DROP SCHEMA.
2019-05-03 15:48:37 +02:00
lukaseder
cad39d4e62
[ #8593 ] DB2 ranking functions require an ORDER BY clause
2019-05-02 13:39:10 +02:00
Knut Wannheden
a7a0a02d3c
[ #8591 ] Extract DSL#unnest() into private unnest0()
...
This refatoring is done in order to avoid @Support annotated methods
(with incompatible sets of dialects) calling each other.
2019-05-02 11:59:55 +02:00
Knut Wannheden
3d94a4885e
[ #8590 ] Support for SQLite EXPLAIN
2019-05-02 11:33:32 +02:00
Knut Wannheden
696d953036
[ #8588 ] Add SQLite support for partial indexes
...
Adds SQLite to the @Support annotations of CreateIndexWhereStep.
2019-05-02 11:33:13 +02:00
Knut Wannheden
82f18d0129
[ #8582 ] Support AURORA_MYSQL in MySQLDSL
...
Add AURORA_MYSQL to @Support annotations of MySQLDSL.
2019-05-01 13:34:47 +02:00
lukaseder
cc4d7cd837
[ #8573 ] Outdated Javadoc on ExecuteType.DDL
2019-04-29 10:52:55 +02:00
lukaseder
6ad62ad5b7
[ #7518 ] [ #8572 ] Add parser support for RATIO_TO_REPORT
2019-04-29 10:24:24 +02:00
lukaseder
0e50536a3e
[ #8570 ] Wrong Javadoc on Record.setValue()
2019-04-29 09:47:50 +02:00
Knut Wannheden
50ac9e746c
[ #1699 ] Support UNIQUE constraint
...
Add DSL#unique(Select) which represents the standard SQL "UNIQUE"
constraint. Since no of the supported dialects natively support UNIQUE,
the constraint is always emulated as a NOT EXISTS predicate (and NOT
UNIQUE is emulated as a corresponding EXISTS predicate). See the
following example:
NOT EXISTS (
SELECT NULL
FROM (SELECT 1 a, 2 b UNION ALL SELECT 1 a, 2 b) t
WHERE (a, b) IS NOT NULL
GROUP BY a, b
HAVING count(*) > 1
)
2019-04-24 11:51:58 +02:00
Knut Wannheden
323b8cc36b
Added Knut to ABOUT.txt
2019-04-24 11:51:29 +02:00
lukaseder
fc8f74ed87
[ #7851 ] DSL.coerce() should use argument field's qualified name
2019-04-24 10:34:54 +02:00
lukaseder
65ce24294c
[ #8561 ] Wrong cast generated for Informix and others when casting a LocalDateTime value
2019-04-23 15:34:12 +02:00
lukaseder
60d856075e
[ #8560 ] Add support for calling stored functions with defaulted parameters from SQL in Oracle
2019-04-23 14:31:11 +02:00
Knut Wannheden
8f616025c2
[ #8511 ] Updated DefaultRenderContext#SQLITE_KEYWORDS to SQLite 3.28
...
Updated DefaultRenderContext#SQLITE_KEYWORDS to include all keywords in
SQLite 3.28. See https://www.sqlite.org/lang_keywords.html .
2019-04-23 14:06:25 +02:00
lukaseder
d67d04b19a
[ #8557 ] StackOverflowError when using same query instance on both sides of a set operation
...
In jOOQ 3.x, the DSL API is mostly mutable. For set operations, this means that a query x cannot appear on both sides of the set operation, e.g. x.union(x) is not possible.
2019-04-23 10:31:07 +02:00
lukaseder
9323e819c3
[ #8548 ] Missing H2 support on WindowExcludeStep.excludeNoOthers()
2019-04-23 09:39:11 +02:00
lukaseder
fa9422521f
[ #8548 ] Add support for SQLite window function extensions from version 3.28
2019-04-18 18:01:12 +02:00
lukaseder
6860388843
[ #8552 ] Add SQLDialect.supports(Collection<SQLDialect>)
2019-04-18 17:46:08 +02:00
lukaseder
c7beac5ae3
[ #8547 ] Add SQLDialect.SQLITE_3_28 and SQLDialect.SQLITE_3_25
2019-04-18 16:26:06 +02:00
lukaseder
a7215a91ba
[ #8551 ] Support old SQLDialects only in commercial distributions
2019-04-18 16:11:37 +02:00
lukaseder
b7e6923f34
[ #8502 ] Missing annotation
2019-04-18 10:56:29 +02:00
Knut Wannheden
e24d186330
[ #8433 ] INSERT ... ON CONFLICT clause for SQLite
...
As of version 3.24.0 SQLite natively supports INSERT's ON CONFLICT
clause, which can thus also be used by jOOQ.
Note: SQLite doesn't support combining DEFAULT VALUES with ON CONFLICT.
And since SQLite does not support the DEFAULT keyword in INSERT the
DEFAULT VALUES clause cannot be emulated.
2019-04-18 10:48:37 +02:00
Knut Wannheden
861c4422c7
Regenerate JAXB code
...
Specify <noFileHeader> option to maven-jaxb2-plugin and also normalize
line terminators to UNIX style.
2019-04-18 10:22:24 +02:00
lukaseder
b65a945c91
[ #8539 ] Add alias DSL.default_() for DSL.defaultValue()
2019-04-17 14:27:43 +02:00
lukaseder
c5903425ee
[ #8537 ] Parsing CREATE SEQUENCE always leads to quoted sequence names
2019-04-17 13:38:03 +02:00
lukaseder
be6200e1ba
[ #8522 ] Added integration test for chained function calls
2019-04-16 16:55:15 +02:00
Knut Wannheden
56fe33475d
[ #8529 ] Clean up Javadoc for INSERT ... ON CONFLICT
...
Improves the DSL Javadoc for INSERT ... ON [ CONFLICT | DUPLICATE KEY ]
2019-04-16 16:22:16 +02:00
lukaseder
97f8700abf
[ #8531 ] Wrong Context.subqueryLevel() when emulating derived column lists
...
If a QueryPart generates a subquery explicitly, then it has to mark it as such.
2019-04-16 16:08:40 +02:00
Knut Wannheden
adcb72fcfb
[ #7545 ] Add <includeExpression> and <excludeExpression> to <forcedType>
...
Add <includeExpression> and <excludeExpression> as well as
<includeTypes> and <excludeTypes> to <forcedType>. The generator will
warn about usage conflicting with the legacy <expression>,
<expressions>, and <types> elements.
2019-04-16 15:34:24 +02:00
Knut Wannheden
840f5a2aed
[ #8527 ] Fix MiniJAXB#append() when called using enums
...
The JAXB generated models also define Java enums, which should thus also
be supported by MiniJAXB#append().
2019-04-16 12:55:45 +02:00
Knut Wannheden
652e2b1a96
[ #8515 ] Fix type hierarchy of InsertOnConflictConditionStep
...
InsertOnConflictConditionStep now extends InsertReturningStep rather
than InsertFinalStep and is now also the type returned by the methods
declared in InsertOnConflictWhereStep.
2019-04-16 12:49:47 +02:00
Knut Wannheden
14a0f6ddc8
[ #3607 ] [ #8522 ] Support PL/SQL BOOLEAN types in SQL functions
2019-04-16 12:49:37 +02:00
lukaseder
927708b15a
[ #3607 ] [ #8522 ] Support PL/SQL BOOLEAN types in SQL functions
...
[#8522 ] Emulate the PL/SQL BOOLEAN type in SQL functions in Oracle 12c
[#3607 ] Allow for emitting common table expression declarations to RenderContext
2019-04-16 12:04:53 +02:00
lukaseder
cd057d34d4
[ #461 ] [ #473 ] [ #2597 ] [ #8234 ] Unnecessary casts should no longer be ignored
...
Historically, SQL casts were ignored if jOOQ's Field<T> type was of the same type T as the cast type. This makes sense for some internals, but not in the public API. When a user wants to cast an expression, this should always produce a SQL cast.
2019-04-10 16:16:20 +02:00
lukaseder
929529ec7a
[ #8503 ] Make SET clause in ON DUPLICATE KEY UPDATE optional in parser
...
jOOQ parses a synthetic SET clause which is not supported by MySQL. This clause must be parsed optionally
2019-04-10 12:01:55 +02:00
lukaseder
3f84ccf58f
[ #8479 ] Emulate INSERT .. ON DUPLICATE KEY UPDATE .. WHERE on MySQL
...
MySQL doesn't support the useful WHERE clause on ON DUPLICATE KEY UPDATE like PostgreSQL does on ON CONFLICT. But it can easily be emulated using CASE if users do not rely on the effective update counts.
2019-04-10 11:52:56 +02:00
lukaseder
6d630cd53a
[ #8434 ] Support H2 v1.4.198 array syntax
...
H2 1.4.198 changed array syntax incompatibly to align the syntax with PostgreSQL, HSQLDB, and the SQL standard. The old syntax (which conflicts with row value expression) is no longer really supported.
2019-04-10 11:12:28 +02:00
lukaseder
a55a362fd8
[ #8502 ] Add support for H2 1.4.198 row value expression subquery syntax
...
H2 breaks backwards compatibility in 1.4.198 and supports row value expressions at the price of desupporting the "old" vendor specific array syntax. This means we can now remove some H2 specific logic and implement standard row value expression syntax also for H2
2019-04-09 17:49:26 +02:00
Knut Wannheden
f50f71eb9f
[ #8429 ] Fix escaping in AbstractField#endsWith(Object)
...
Since client code can specify a different value when the query is being
executed, the escaping must be done in SQL rather than in Java. The same
applies to AbstractField#startsWith(Object) and some more LIKE-based
predicates.
2019-04-09 16:37:22 +02:00
lukaseder
f37d66de12
[ #8498 ] Add more documentation to the RETURNING clause
2019-04-09 12:45:51 +02:00
lukaseder
baeae9a24b
[ #7953 ] [ #8496 ] Search the hierarchy for a matching setter
2019-04-09 12:33:43 +02:00
lukaseder
af286d96b7
[ #8486 ] Add Settings.renderNamedParamPrefix to support dialect specific named parameter placeholders
2019-04-08 11:16:48 +02:00
lukaseder
519e870394
[ #4498 ] emulate INSERT .. RETURNING via SQL Server OUTPUT clause (WIP)
2019-04-05 17:08:02 +02:00
lukaseder
2785bc84ae
[ #8491 ] Remove unnecessary marker tokens in source code
2019-04-05 11:52:34 +02:00
Knut Wannheden
24db79da74
[ #8489 ] Add TableImpl#fieldsRow() override due to Scala compiler bug
2019-04-04 17:51:57 +02:00
Knut Wannheden
7fcbc8e135
[ #8484 ] Fix 3.11 <-> 3.12 mismatches between XSDs and Constants class
2019-04-04 12:14:56 +02:00
lukaseder
b00f17efcf
[ #8477 ] Support views with renamed columns in SQLite's CREATE VIEW statement
2019-04-01 13:02:54 +02:00
lukaseder
92c45da529
[ #8409 ] Add support for plain SQL CREATE VIEW statements
2019-04-01 12:32:54 +02:00
lukaseder
78c4295e61
[ #8460 ] Regression calling POJO setters twice from DefaultRecordMapper.MutablePOJOMapper
2019-04-01 10:56:38 +02:00
lukaseder
3dcba4ea21
[ #8468 ] DataTypeException when org.jooq.Meta accesses PostgreSQL array column with default expression
2019-03-29 16:03:41 +01:00
lukaseder
3a6ea32896
[ #8456 ] Calling Record.get(0, int.class) returns null if value is not convertible to int
2019-03-26 17:10:29 +01:00
lukaseder
b19d8ef9b6
[ #7518 ] [ #8451 ] Add SQL parser support for PostgreSQL ILIKE
2019-03-26 15:00:37 +01:00
lukaseder
fc4860accc
[ #7518 ] [ #8401 ] Add support for Oracle REGEXP_LIKE
2019-03-26 14:41:10 +01:00
lukaseder
ee51450948
[ #8421 ] WIP CREATE and DROP SCHEMA in Informix
2019-03-26 09:11:30 +01:00
lukaseder
ebc1dce54c
[ #8401 ] Add support for parsing REGEXP, RLIKE, and LIKE_REGEX operators
2019-03-25 12:53:36 +01:00
lukaseder
40715b25d8
[ #8402 ] Bad SQL generated when setting data type and nullability in PostgreSQL's ALTER TABLE .. ALTER .. SET statement
2019-03-25 11:56:19 +01:00
lukaseder
6965dd4d1f
[ #8421 ] Support various DDL statements in Informix
2019-03-25 10:50:21 +01:00
lukaseder
de302f0cc5
[ #8430 ] Ignore ON { DELETE | UPDATE } NO ACTION in dialects that do not support the syntax
2019-03-25 10:49:56 +01:00
lukaseder
6b6627dc89
[ #8424 ] Better VALUES() emulation in Informix using TABLE(MULTISET)
2019-03-18 09:41:28 +01:00
lukaseder
ce73802a32
[ #8413 ] Rollback should not be called when TransactionListener.commitEnd() throws exception
2019-03-14 15:34:45 +01:00
lukaseder
12a2061613
[ #8197 ] Work around some javac compilation issue
2019-03-14 11:47:40 +01:00
lukaseder
b09725df2d
[ #8415 ] Support PERCENT and WITH TIES in H2
2019-03-14 11:13:56 +01:00
lukaseder
6a56edf319
[ #8415 ] Emulate WITH TIES in H2
2019-03-14 10:35:36 +01:00
lukaseder
16df2e309d
[ #8414 ] Don't emulate empty ORDER BY clause in H2's ROW_NUMBER() function
2019-03-14 10:14:37 +01:00
lukaseder
f3452c486b
[ #8412 ] Add DSL.neg(Field<?>) as an alias for Field.neg()
2019-03-14 09:34:11 +01:00
lukaseder
ed7733e8b1
[ #7518 ] [ #8397 ] Parser doesn't recognise BOOL data type
2019-03-07 14:47:57 +01:00
lukaseder
fe5342fe9a
[ #8391 ] Fixed regression
2019-03-07 14:05:43 +01:00
lukaseder
6bff643921
[ #7331 ] Add reference to <forcedType/> configuration in DataType, Converter, Binding
2019-03-07 13:00:21 +01:00
lukaseder
65f69e9a1b
[ #7216 ] Add RecordN<T1, ..., TN> fetchSingle(Field<T1>, ..., Field<TN>)
2019-03-07 11:23:23 +01:00
lukaseder
6c123d7ea1
[ #5640 ] [ #8391 ] Better support for reading JSON, CSV, XML
...
- [#5640 ] MockFileDatabase should support all jOOQ import formats, including JSON, CSV, XML
- [#8391 ] DSLContext.fetchFromJSON() should be able to read JSON without header information
2019-03-06 15:50:57 +01:00
lukaseder
ad1f015401
[ #2233 ] Turn off some XML features for security reasons
2019-03-06 14:12:41 +01:00
lukaseder
80d8642c5b
[ #2233 ] Add Result<?> DSLContext.fetchFromXML() to allow for loading results that were exported using Result.formatXML()
2019-03-06 14:08:48 +01:00
lukaseder
726e77960a
[ #8390 ] Add support for unmapping Iterable
2019-03-06 12:39:07 +01:00
lukaseder
70fe064517
[ #7809 ] Generate overridden Table.fieldsRow() method in generated tables
2019-03-05 14:17:42 +01:00
lukaseder
14d9703a10
[ #8346 ] Improve Javadoc on DSLContext.meta(Table...) etc.
2019-03-05 12:29:13 +01:00
lukaseder
a1591a2e8e
[ #7518 ] [ #8386 ] Support inline constraint names in CREATE TABLE statements
2019-03-05 11:41:01 +01:00
lukaseder
4c3efa0cec
[ #8328 ] { UPDATE | DELETE } .. LIMIT isn't emulated correctly in the absence of unique key meta information
2019-03-04 12:32:24 +01:00
lukaseder
4e902bea0c
[ #7518 ] [ #8384 ] Add parser support for INSERT INTO t [[AS] alias]
2019-03-04 11:02:13 +01:00
lukaseder
eb6952405b
[ #6583 ] Make this work also for aliased target tables
2019-03-04 10:41:03 +01:00
lukaseder
4e2bc62640
[ #8383 ] Emulate { UPDATE | DELETE } table AS alias in SQL Server
2019-03-01 17:44:11 +01:00
lukaseder
8aa087e5fb
[ #8342 ] Array of enums whose literals contain special characters cannot be bound in PostgreSQL
2019-03-01 16:21:49 +01:00
lukaseder
f27ae69702
Removed unnecessary import
2019-03-01 16:21:42 +01:00
lukaseder
bcd684dabb
[ #7591 ] Refactor calls to DefaultExecuteContext.register() to use ResourceManagingScope.autoFree() instead
2019-02-28 15:56:08 +01:00
lukaseder
4e95b3fab1
[ #2530 ] Further predicate support
2019-02-28 12:37:25 +01:00
lukaseder
dd340e74be
[ #8360 ] Add new MatcherTransformType.LOWER_FIRST_LETTER and UPPER_FIRST_LETTER
2019-02-28 12:37:07 +01:00
lukaseder
32d008c32c
[ #8355 ] NullPointerException on Routine.toString() when routine is not attached to a Configuration
2019-02-27 10:21:39 +01:00
lukaseder
a32df83fc0
[ #2530 ] Support for row value expressions
2019-02-25 10:49:19 +01:00
lukaseder
54c5bc3138
[ #8350 ] Parser parses (a, b) IS NULL as (a, b) IS NOT NULL
2019-02-25 09:32:31 +01:00
lukaseder
04d03bfda0
[ #2530 ] First working draft
2019-02-22 15:35:35 +01:00
lukaseder
d8f06d6b1c
Fix OSS edition
2019-02-19 17:06:40 +01:00
lukaseder
1c2c2343b7
[ #8338 ] Redundant QualifiedField.name and AbstractNamed.name fields
2019-02-19 12:22:23 +01:00
lukaseder
3c31a7f130
[ #8339 ] RemovingPrefixMapper is not implemented correctly
2019-02-19 12:13:12 +01:00
lukaseder
7e3fa0efd3
[ #8331 ] Add DSLContext.truncateTable() as an alias for truncate()
2019-02-18 10:20:30 +01:00
lukaseder
e3fb522416
[ #6382 ] Fix Derby Support annotations
2019-02-18 10:20:24 +01:00
lukaseder
b40260058a
[ #6382 ] Fix Derby Support annotations
2019-02-18 10:12:59 +01:00
lukaseder
0be8df7bcd
[ #6382 ] Fix Derby Support annotations
2019-02-18 10:02:37 +01:00
lukaseder
8cbd0208b3
[ #8333 ] Support INSERT .. ON ( DUPLICATE KEY | CONFLICT ) in Derby
2019-02-18 09:29:04 +01:00
lukaseder
2eb488aab1
[ #5110 ] Add support for Derby's MERGE statement
2019-02-15 16:43:34 +01:00
lukaseder
7c70b54c09
[ #8329 ] Lacking formatting for WITH [ NO ] DATA clause
2019-02-15 12:34:38 +01:00
lukaseder
fba479036b
[ #6382 ] Fix Derby Support annotations
2019-02-15 12:30:18 +01:00
lukaseder
d096c7d218
[ #7796 ] Support DatePart.QUARTER in Derby
2019-02-15 11:38:44 +01:00
lukaseder
6f350f13e0
[ #8325 ] By default, turn this feature off in the parser
2019-02-15 10:02:25 +01:00
lukaseder
a478af0651
[ #8294 ] Add a newline after translated SQL in the ParserCLI's interactive mode
2019-02-14 15:14:26 +01:00
lukaseder
64e52efcdc
[ #8325 ] Add a special comment syntax to the Parser and DDLDatabase that allows for ignoring certain statements
2019-02-14 14:33:58 +01:00
lukaseder
8f151a3d3b
[ #6583 ] Work around MySQL's self-reference-in-DML-subquery restriction
2019-02-12 18:12:42 +01:00
lukaseder
14a73800eb
[ #6583 ] Work around MySQL's self-reference-in-DML-subquery restriction
2019-02-12 18:06:10 +01:00
lukaseder
c5f712a8f5
[ #4473 ] Add ResultQuery<R1>.coerce(Field<?>[]), coerce(Table<R>), that coerce a new Record type on a ResultQuery
2019-02-12 11:51:39 +01:00
lukaseder
3c9180bd2c
Whitespace diff
2019-02-11 12:08:35 +01:00
lukaseder
ffc95955e9
[ #8309 ] Add parser support for declaring multiple variables in one procedural statement
2019-02-07 16:40:05 +01:00
lukaseder
468783600d
[ #8308 ] Support ALTER TABLE .. ADD with multiple columns in PostgreSQL
2019-02-07 14:58:57 +01:00
lukaseder
c922728cd5
[ #6475 ] Maintain a variable scope stack to identify local variables in parser
2019-02-07 13:31:33 +01:00
lukaseder
f2179b1c57
[ #6475 ] Added MySQL support
2019-02-06 17:39:23 +01:00
lukaseder
810091d800
[ #6475 ] Added MariaDB support
2019-02-06 17:06:08 +01:00
lukaseder
4d2bbbe73c
[ #6475 ] Added MariaDB support
2019-02-06 16:58:54 +01:00
lukaseder
d3dc0ac857
[ #8302 ] Emulate procedural languages in H2
2019-02-06 15:32:01 +01:00
lukaseder
850c922da8
[ #8290 ] Add Parser.parseStatements() to parse procedural code
2019-02-06 11:26:09 +01:00
lukaseder
9e40e28c13
[ #8300 ] Support MODE() and MEDIAN() in H2
2019-02-06 10:43:59 +01:00
lukaseder
942fff54e6
[ #8297 ] Support inverse distribution functions in H2
2019-02-06 10:10:48 +01:00
lukaseder
7a55222907
[ #8298 ] Support hypothetical set functions in H2
2019-02-06 09:54:57 +01:00
lukaseder
b377a624ff
[ #8299 ] Support FILTER clause on aggregate functions in H2
2019-02-06 09:37:27 +01:00
lukaseder
877983cad2
[ #8295 ] RenderKeywordStyle.PASCAL doesn't work when keywords contain whitespace
2019-02-05 17:52:14 +01:00
lukaseder
fc13913641
[ #8294 ] Add interactive mode to ParserCLI
2019-02-05 17:35:24 +01:00
lukaseder
c2a5dc320f
[ #7312 ] WIP
2019-02-05 16:28:02 +01:00
lukaseder
cbc2c677a1
[ #8293 ] Wrong Javadoc on SelectQuery.addHaving(Operator, Condition...)
2019-02-05 14:55:35 +01:00
lukaseder
57fc2e252f
[ #8293 ] Wrong Javadoc on SelectQuery.addHaving(Operator, Condition...)
2019-02-05 14:54:50 +01:00
lukaseder
498c2a4b11
[ #8290 ] Add Parser.parseStatement() to parse procedural code
2019-02-05 12:19:53 +01:00
lukaseder
f20eb42e79
[ #8285 ] Add support for REPEAT statements in procedural blocks
2019-02-05 11:28:53 +01:00
lukaseder
3cb3a14ce1
[ #8285 ] Add support for REPEAT statements in procedural blocks
2019-02-05 10:19:07 +01:00
lukaseder
ef6b165178
[ #6475 ] Added support for DB2
2019-02-04 12:41:48 +01:00
lukaseder
4793a9c461
[ #8275 ] Improve SQLite's CEIL and FLOOR emulation
2019-02-01 17:12:52 +01:00
lukaseder
1805a3cdd5
[ #2132 ] Add support for quarter() in SQLite
2019-02-01 16:57:09 +01:00
lukaseder
0827914608
[ #8265 ] ParamType not supported: FORCE_INDEXED when calling Query.getSQL()
2019-02-01 16:27:24 +01:00
lukaseder
af0b6c7a8e
[ #8280 ] Add CTE support for SQLite
2019-02-01 16:09:00 +01:00
lukaseder
9033455512
[ #8280 ] Add CTE support for SQLite
2019-02-01 16:01:27 +01:00
lukaseder
b6b28b1e6a
[ #8279 ] Emulate inline window specifications based on other window definitions in SQLite
2019-02-01 15:19:13 +01:00
lukaseder
9fa671e6e8
[ #8276 ] Add overloads CreateTableColumnStep.columns(Name...) and columns(String...)
2019-01-31 16:50:52 +01:00
lukaseder
ca46ecdc23
[ #5309 ] [ #7518 ] Ehm...
2019-01-31 16:35:04 +01:00
lukaseder
51759a6cee
[ #5309 ] [ #7518 ] Wrong parser implementation
2019-01-31 16:30:14 +01:00
lukaseder
d1e2abd1ab
[ #5309 ] Emulate CTAS with column lists where not supported
2019-01-31 16:11:17 +01:00
lukaseder
0129d59318
[ #5309 ] Emulate CTAS with column lists where not supported
2019-01-31 15:42:39 +01:00
lukaseder
05e49b2800
[ #5309 ] [ #7518 ] Add support for CREATE TABLE t(c1, c2, ..., cn) AS SELECT ...
2019-01-31 15:03:12 +01:00
lukaseder
2e1ffa3bc0
[ #8264 ] Expose new Settings.parseDialect in ParserCLI
2019-01-29 13:01:06 +01:00
lukaseder
d3be7f3787
Minor parser fixes
2019-01-29 12:37:53 +01:00
lukaseder
a685d70ec5
[ #7518 ] Support parsing ALTER TABLE .. ADD COLUMN IF NOT EXISTS
2019-01-29 12:21:00 +01:00
lukaseder
01c5149ba2
[ #7518 ] Support parsing ALTER TABLE .. DROP COLUMN IF EXISTS
2019-01-29 11:59:24 +01:00
lukaseder
f43fd610b8
[ #8261 ] [ #7518 ] Added parser support for additional TRIM syntax
2019-01-29 11:33:55 +01:00
lukaseder
570bc41f03
[ #8261 ] [ #7518 ] Added parser support for additional TRIM syntax
2019-01-29 11:26:25 +01:00
lukaseder
c5f7714631
[ #8261 ] [ #8262 ] Improved TRIM support
...
- [#8261 ] Add trim(String, char), rtrim(String, char), ltrim(String, char)
- [#8262 ] Add support for SQL Server 2017 TRIM()
2019-01-29 10:57:16 +01:00
lukaseder
8ffa8b1bce
[ #8241 ] Java 6 support
2019-01-28 13:12:28 +01:00
lukaseder
1609b27966
[ #8241 ] Wrong results from field when forcedType references both converter and binding
2019-01-28 13:09:38 +01:00
lukaseder
1a73fb2f2a
[ #8256 ] DefaultExecuteContext should contain only a single ThreadLocal list with resources
2019-01-25 16:05:32 +01:00
lukaseder
846285c25a
[ #7591 ] Add new ResourceManagingScope which allows for Binding implementations to register resources which are freed after execution
2019-01-25 15:56:21 +01:00
lukaseder
6d9096de28
[ #7591 ] Add new ResourceManagingScope which allows for Binding implementations to register resources which are freed after execution
2019-01-25 15:56:15 +01:00
lukaseder
53f7bf407b
[ #8255 ] Add more Javadoc to common org.jooq.XYZ types
2019-01-25 13:53:08 +01:00
lukaseder
1819ebbd6d
[ #8176 ] Fixed wrong implementation
2019-01-25 11:11:28 +01:00
lukaseder
ceeea784b5
[ #8175 ] Fixed regression
2019-01-25 10:57:17 +01:00
lukaseder
547f6dbf93
[ #8217 ] Add an annotation for commercial only API
2019-01-25 10:44:00 +01:00
lukaseder
c639b30f34
[ #7734 ] Wrong exception is being thrown
2019-01-25 09:28:23 +01:00
lukaseder
596d4cacce
[ #7925 ] Make org.jooq.impl classes Iif, NullIf, KeywordImpl package-private
2019-01-23 16:18:41 +01:00
lukaseder
4bc883cef5
[ #8247 ] Add DSL.truncate(String) overload for consistency
2019-01-23 14:37:23 +01:00
lukaseder
01cdefb6e9
[ #8244 ] Outdated Javadoc on WindowDefinition referring WINDOW clause support
2019-01-23 14:29:49 +01:00
lukaseder
0951408216
[ #8240 ] Add a Javadoc link from all org.jooq.XYZ types to their respective DSL.xyz() constructor method
2019-01-23 14:17:04 +01:00
lukaseder
7bd0507d50
[ #8238 ] Add DSL.convert(DataType<?>, Field<?>, int) to support SQL Server CONVERT() function
2019-01-22 17:34:26 +01:00
lukaseder
b41e43614b
[ #7434 ] ORA-01861 when casting string as date
2019-01-22 14:45:30 +01:00
lukaseder
0b33ab9204
[ #8236 ] Add DataType.isTimestamp()
2019-01-22 14:30:02 +01:00
lukaseder
207e4ed7f5
[ #7485 ] Document jOOQ's auto-conversion utility
2019-01-22 14:03:31 +01:00
lukaseder
1fbdf45b11
[ #8042 ] ALTER TABLE .. RENAME TO .. should fully qualify tables if supported by the database
2019-01-21 12:57:36 +01:00
lukaseder
2771a378f7
[ #8233 ] YearToSecond should be equal to YearToMonth or DayToSecond, if same interval is represented
2019-01-21 11:58:46 +01:00
lukaseder
126c8b496e
[ #7518 ] Support parsing PostgreSQL interval literals
2019-01-21 11:06:26 +01:00
lukaseder
4eb6ff4b05
[ #8232 ] Negative DayToSecond() intervals are not correctly normalised
2019-01-21 10:51:40 +01:00
lukaseder
add94df523
[ #8231 ] Negative YearToMonth() intervals are not correctly normalised
2019-01-21 10:25:36 +01:00
Bernardo Gomez Palacio
f59e48fd23
Resolves 8221: StringIndexOutOfBoundsException when parsing a PostgreSQL Timestamp
2019-01-15 10:51:57 -08:00
lukaseder
2c559672f3
Fixed OSS version
2019-01-14 13:10:48 +01:00
lukaseder
3f9cd17d34
[ #8213 ] Move some DataKey values to a new BooleanDataKey enum
2019-01-14 11:43:21 +01:00
lukaseder
3d2d4f1226
[ #8145 ] Fix compilation error in OSS edition
2019-01-11 17:31:09 +01:00
lukaseder
c457d7ef40
[ #8210 ] Fix a variety of compiler warnings when building jOOQ
2019-01-11 17:30:27 +01:00
lukaseder
ca1b59badc
[ #8206 ] Add new Settings.inlineThreshold
2019-01-11 15:23:17 +01:00
lukaseder
7736f51a64
[ #8203 ] ORA-01745 executing a SELECT * FROM WHERE column IN (large collection)
2019-01-11 14:57:20 +01:00
lukaseder
a4a142415b
[ #8179 ] Revert some regressions
2019-01-11 12:27:38 +01:00
lukaseder
2852f5d8ca
[ #6475 ] Added T-SQL support
2019-01-11 12:07:25 +01:00
lukaseder
e40d4c9649
[ #6475 ] Added T-SQL support
2019-01-11 09:41:35 +01:00
lukaseder
fb48bfa0c7
[ #8176 ] Add support for indexed FOR loops in procedural blocks
2019-01-10 15:58:41 +01:00
lukaseder
0484fcda81
[ #8189 ] Add support for GOTO in procedural blocks
2019-01-10 14:24:03 +01:00
lukaseder
d7801fdef1
[ #8197 ] Row[N].isDistinctFrom(T1, ..., TN) and others do not work correctly when passing null values
2019-01-10 14:13:57 +01:00
lukaseder
d24cbccf26
[ #8197 ] Row[N].isDistinctFrom(T1, ..., TN) and others do not work correctly when passing null values
2019-01-10 14:04:14 +01:00
lukaseder
fd1179677d
[ #8188 ] Add support for labels in procedural blocks
2019-01-10 12:21:22 +01:00
lukaseder
2eb09a7247
Missing commit
2019-01-10 10:26:16 +01:00
lukaseder
4af621aea6
Forgotten commits
2019-01-08 16:59:02 +01:00
lukaseder
b2772d8cae
[ #8190 ] Remove private DSL.field(Row[N]) methods
2019-01-08 16:58:50 +01:00
lukaseder
844594134c
[ #8187 ] Add support for CONTINUE [ WHEN ] in procedural blocks
2019-01-08 16:39:27 +01:00
lukaseder
e5e1d22669
[ #8175 ] Add support for LOOP in procedural blocks
2019-01-08 16:17:05 +01:00
lukaseder
e697ceeec5
[ #8186 ] Add support for EXIT [ WHEN ] in procedural blocks
2019-01-08 15:58:29 +01:00
lukaseder
6b6a2ea602
[ #8174 ] Add support for WHILE loops in procedural blocks
2019-01-08 15:46:04 +01:00
lukaseder
d6fb110901
[ #8178 ] DefaultOffsetDateTimeBinding fails when year field is negative
2019-01-08 14:31:25 +01:00
lukaseder
59438de1d1
[ #8181 ] Timezone Offset parser doesn't correctly parse offset seconds
2019-01-08 12:25:33 +01:00
lukaseder
27e6aebcc0
[ #8179 ] Provide empty base implementation for QueryPartInternal.clauses()
2019-01-08 09:55:20 +01:00
lukaseder
1044ab4900
[ #8173 ] SelectIntoStep.into() should return SelectFromStep, not SelectIntoStep
2019-01-07 12:46:24 +01:00
lukaseder
c7d1366438
[ #8168 ] Add support for procedural blocks that do not generate BEGIN .. END
2019-01-07 12:20:31 +01:00
lukaseder
b80cb297ca
[ #8135 ] Add support for IF statements inside of statement blocks
2019-01-07 10:33:54 +01:00
lukaseder
a100420bd5
[ #8135 ] Add support for IF statements inside of statement blocks
2019-01-07 10:33:42 +01:00
lukaseder
ea5af2f9d6
[ #8163 ] Deprecate synonym keywords and use suffix underscore instead
2019-01-04 09:54:07 +01:00
lukaseder
541dd6d245
[ #7306 ] Added support for SELECT INTO
2019-01-04 09:54:04 +01:00
lukaseder
00d715e7a5
git commit -m
2019-01-03 16:09:32 +01:00
lukaseder
81c84f27ba
[ #7305 ] [ #7306 ] Basic support for procedural local variables
2019-01-03 14:49:16 +01:00
lukaseder
afbeef3b07
[ #7305 ] [ #7306 ] Basic support for procedural local variables
...
- [#7305 ] Add support for DECLARE statements inside of statement blocks
- [#7306 ] Add support for the SET command to assign values to variables
2019-01-03 14:46:45 +01:00
lukaseder
1fbc3fbd98
[ #8158 ] ORA-38104 when using ON DUPLICATE KEY UPDATE in Oracle
2019-01-02 17:13:54 +01:00
lukaseder
73be2e2f10
[ #8156 ] Wrong Javadoc on LoaderOptionsStep.onDuplicateKeyUpdate()
2019-01-02 15:38:48 +01:00
lukaseder
20d43aba97
[ #8151 ] ClassCastException in ClobBinding when ConnectionProvider provides wrapped Connection
2019-01-02 14:18:37 +01:00
lukaseder
5cac33c9c0
[ #8150 ] DefaultConfiguration is missing some JavaBeans setters
2019-01-02 12:44:32 +01:00
lukaseder
2af62dda17
[ #8149 ] DefaultConfiguration.derive() does not correctly derive
2019-01-02 12:34:04 +01:00
lukaseder
ba5077d200
[ #8145 ] Add an UnwrapProvider SPI that allows for unwrapping underlying JDBC types through proprietary APIs
2019-01-02 12:09:53 +01:00
lukaseder
d556bf8036
[ #8143 ] java.lang.NoSuchMethodException when calling setBinaryDouble on org.jboss.jca.adapters.jdbc.WrappedStatement
2018-12-27 16:12:56 +01:00
lukaseder
777c6b039f
[ #7518 ] Support parsing the SQL Server DATEPART() function
2018-12-19 12:30:53 +01:00
lukaseder
a0d5691d83
[ #7518 ] Add support for SQL Server STDEVP(), STDEV() functions
2018-12-19 12:00:52 +01:00
lukaseder
25d450c83e
[ #7518 ] Added support for additional interval syntax
2018-12-18 15:44:24 +01:00
lukaseder
fbc8f05336
[ #7518 ] Support parsing CROSS JOIN [ ON | USING ]
2018-12-18 13:07:00 +01:00
lukaseder
af2c447bfe
[ #8128 ] [ #8131 ] returningResult() problems
...
- [#8128 ] returningResult() returns generated record type when returning only the identity
- [#8131 ] ClassCastException in H2 when calling returningResult() to fetch an identity when the generated record does not implement Record1
2018-12-18 11:20:16 +01:00
lukaseder
ac70491949
[ #8123 ] java.lang.ClassCastException: java.base/java.lang.String cannot be cast to java.base/java.util.UUID when using UUID types with MockFileDatabase
2018-12-17 12:52:28 +01:00
lukaseder
0ed550461e
[ #8124 ] [ #8125 ] [ #8126 ] MockFileDatabase improvements
...
- [#8124 ] Support regular expressions in MockFileDatabase
- [#8125 ] Incorrect implementation of MockFileDatabase.nullLiteral()
- [#8126 ] Add an external MockFileDatabaseConfiguration object
2018-12-17 12:40:52 +01:00
lukaseder
4c7d404016
[ #7641 ] java.lang.NoSuchMethodException when calling createARRAY on JBoss WrappedConnectionJDK8
2018-12-14 15:35:30 +01:00
lukaseder
d7cbbee8fe
[ #5966 ] Add support for NATURAL FULL [ OUTER ] JOIN
2018-12-14 15:08:31 +01:00
lukaseder
25e86d05bf
Revert [ #6282 ] Emulate MySQL's STRAIGHT_JOIN in Oracle using /*+LEADING*/ hint
2018-12-14 10:00:53 +01:00
lukaseder
f5c161c4a4
[ #6282 ] Emulate MySQL's STRAIGHT_JOIN in Oracle using /*+LEADING*/ hint
2018-12-12 17:30:53 +01:00
lukaseder
618824e6e6
[ #6548 ] Support multiple external configuration files through <configurationFiles/>
2018-12-12 16:20:55 +01:00
lukaseder
731cf6da14
[ #8113 ] Cannot call MockStatement.getGeneratedKeys()
2018-12-12 12:27:44 +01:00
lukaseder
5fe4508538
[ #8113 ] Cannot call MockStatement.getGeneratedKeys()
2018-12-12 12:03:51 +01:00
lukaseder
9a0b121756
[ #8110 ] Embedded UNIQUE INDEX specification in CREATE TABLE statement does not get generated
2018-12-11 16:40:48 +01:00
lukaseder
b06cd5f5d0
[ #7268 ] Add support for MySQL's UNIQUE [ index_name ] syntax
2018-12-11 16:30:49 +01:00
lukaseder
c74ec4414b
[ #8109 ] Add org.jooq.tools.jdbc.LoggingConnection
2018-12-11 15:08:21 +01:00
lukaseder
8aacd73c76
[ #8107 ] Add Name.Quoted Name.quoted()
2018-12-11 12:00:45 +01:00
lukaseder
55347e83c4
[ #8103 ] Add RenderQuotedNames.EXPLICIT_DEFAULT_QUOTED and EXPLICIT_DEFAULT_UNQUOTED
2018-12-11 11:08:05 +01:00
lukaseder
5e780aad31
[ #8102 ] Add RenderNameCase.LOWER_IF_UNQUOTED and UPPER_IF_UNQUOTED
2018-12-10 12:45:42 +01:00
lukaseder
5616d60e93
[ #7337 ] [ #7518 ] Add Settings.parseDialect
2018-12-10 11:42:46 +01:00
lukaseder
bf57c69042
[ #7337 ] [ #7518 ] Add Settings.parseDialect
2018-12-10 11:31:41 +01:00
lukaseder
b0960b98fb
[ #7810 ] Add DSL.rowField(RowN)
2018-12-10 10:52:58 +01:00
lukaseder
57e32cb63e
[ #8090 ] Added ElementTypes and UDT type descriptor to SnformationSchema
2018-12-10 10:40:40 +01:00
lukaseder
8085ca66af
[ #8093 ] Add support for result less statements in MockFileDatabase
2018-12-07 10:40:12 +01:00
lukaseder
add8767a68
[ #5215 ] Companion object for routine classes generated by ScalaGenerator cause java.lang.IllegalAccessError at runtime
2018-12-05 11:50:09 +01:00
lukaseder
0092d91acf
[ #8076 ] Allow for chaining DataType.asConvertedDataType(Converter) calls
2018-12-03 16:12:19 +01:00
lukaseder
6d415a8d76
[ #8083 ] Add Interval.toDuration()
2018-12-03 14:30:33 +01:00
lukaseder
a6a23970ce
[ #7489 ] Datetime arithmetic generates bind values when input uses inline values
2018-11-30 15:29:10 +01:00
lukaseder
2c27777fd4
[ #8077 ] Various adaptations of jOOQ's internals to support YearToSecond
2018-11-30 14:48:16 +01:00
lukaseder
422832ec21
[ #8077 ] Add org.jooq.types.YearToSecond to support PostgreSQL mixed interval values
2018-11-30 13:34:22 +01:00
lukaseder
4cb0990735
[ #7470 ] Add indexOf() methods to all TableLike types
2018-11-28 15:45:03 +01:00
lukaseder
9b50c5d4c4
[ #7518 ] TOP (n) in SQL Server
2018-11-28 14:27:04 +01:00
lukaseder
48cb8da5f1
[ #7518 ] Bitwise shifting operators >> and <<
2018-11-28 14:13:08 +01:00
lukaseder
9c0a38173a
[ #7518 ] Support Oracle ^= not equals operator
2018-11-28 13:44:17 +01:00