Commit Graph

1524 Commits

Author SHA1 Message Date
Lukas Eder
083e0041ce Fixed whitespace (no tabs, only spaces) 2013-02-28 12:35:53 +01:00
Lukas Eder
201d55d73a [#2280] Improve supported formats for MockFileDatabase - Added some
infos about the current implementation to the Javadoc
2013-02-27 16:59:53 +01:00
Lukas Eder
21a60b5aa6 No need for this local interface 2013-02-27 16:14:04 +01:00
Lukas Eder
e648132697 [#2280] Improve supported formats for MockFileDatabase 2013-02-27 15:52:03 +01:00
Lukas Eder
82fa44d98f [#2281] Add Result<Record> Executor.fetchFromStringData(List<String[]>)
in order to reuse logic from fetchFromCSV
2013-02-27 15:51:33 +01:00
Lukas Eder
bca01a0d76 Fixed OpenCSV's peculiar inline comment style 2013-02-27 14:17:18 +01:00
Lukas Eder
4a7ad9937e [#2278] Postgres (UUID and other) ARRAY types aren't correctly inlined
as string literals
2013-02-27 12:12:45 +01:00
Lukas Eder
78e8b863eb Added missing final keywords 2013-02-27 12:08:13 +01:00
Lukas Eder
48628892e2 [#2279] UUIDs aren't correctly deserialised from Postgres UDTs 2013-02-26 21:52:10 +01:00
Kevin Wooten
9fc494b8e4 Support UUID in Postgres arrays 2013-02-26 13:18:12 -07:00
Lukas Eder
24254e039e [#2267] SQLDialectNotSupportedException: Type class
org.postgis.PGgeometry is not supported in dialect null, when binding
PG* objects
2013-02-25 16:55:04 +01:00
Lukas Eder
a398476260 [#2258] Restore private and deprecated versions of the Factory
constructors, adding some Javadoc about the changes between jOOQ 2.x and
3.0
2013-02-24 12:10:51 +01:00
Lukas Eder
e93e470f94 Removed some deprecated code 2013-02-24 12:00:48 +01:00
Lukas Eder
78937968a6 [#2262] RenderSchema has no effect, if not supplied to the Executor
constructor
2013-02-24 11:50:51 +01:00
Lukas Eder
6a6c9d3526 [#2259] RenderMapping has no effect, if not supplied to the Executor
constructor
2013-02-24 11:38:20 +01:00
Lukas Eder
0457e0b782 Removed deprecated SchemaMapping.NO_MAPPING 2013-02-24 11:28:35 +01:00
Lukas Eder
4b61106f4a Merge pull request #2251 from joe776/master
[#2252] ArrayIndexOutOfBoundsException, when rendering plain SQL that is terminated by a comment
2013-02-20 05:55:04 -08:00
Joerg Schoenfisch
8f7a70f4a0 i could still have been out of bounds if there is only a single newline character(Linux) and not two(Windows). 2013-02-20 14:43:00 +01:00
Joerg Schoenfisch
e913111a8e Prevent an IndexOutOfBoundsException if the SQL-String ends with a single line comment without a newline. 2013-02-20 14:31:30 +01:00
Lukas Eder
9bcaf9edea Fixed syntax error in Javadoc example 2013-02-20 11:28:53 +01:00
Lukas Eder
bbd774795c [#2200] Add Executor.fetchCount(Select<?>) and Select.fetchCount() to
replace the projection by a COUNT(*) query
2013-02-19 11:01:47 +01:00
Lukas Eder
b2894684df Fixed warning 2013-02-18 15:56:08 +01:00
Lukas Eder
e07671ab20 Release 3.0.0-RC1 - Small optimisation 2013-02-17 21:07:04 +01:00
Lukas Eder
8bf263251f Release 3.0.0-RC1 Fixed Javadoc issues 2013-02-17 20:20:38 +01:00
Lukas Eder
797b1b5e0f [#2227] Field.in(T...) doesn't convert argument values to the Field's
type
2013-02-17 19:07:56 +01:00
Lukas Eder
b631eedb23 [#2223] SQL injection is possible in org.jooq.impl.Val, if client code
doesn't correctly enforce generic typesafety, and bind variables are
inlined
2013-02-17 18:34:58 +01:00
Lukas Eder
0455203f49 Release 3.0.0-RC1 - Improved method signature of Record.changed()
methods. Inversed arguments to make method feel more natural
2013-02-16 16:09:24 +01:00
Lukas Eder
d5053a092a Release 3.0.0-RC1 - Added "experimental" remark to Catalog 2013-02-16 15:57:08 +01:00
Lukas Eder
047014fe81 [#2118] Let Row extend Iterable<Field<?>> - Reverted feature 2013-02-16 14:48:09 +01:00
Lukas Eder
9c68bc5e95 Improved TRACE logging of fetched records 2013-02-16 14:08:46 +01:00
Lukas Eder
62c594b43e [#2208] Implement a MockFileDatabase - Experimental draft implementation 2013-02-16 13:18:37 +01:00
Lukas Eder
821b1e6c08 [#2210] Executor.fetchFromCSV() shouldn't mark resulting records as
"changed"
2013-02-16 12:59:56 +01:00
Lukas Eder
1502c0f330 [#2202] Add Mock JDBC objects for unit testing with jOOQ - Use
jOOQ-style getters, not JavaBeans style
2013-02-16 11:02:05 +01:00
Lukas Eder
4db89119b5 [#2202] Add Mock JDBC objects for unit testing with jOOQ - Added
more unit tests
2013-02-16 10:25:35 +01:00
Lukas Eder
e958dc2908 [#2205] Add <R> Result<R> Executor.newResult(Table<R>) to generate
custom results
2013-02-16 09:30:35 +01:00
Lukas Eder
f782f27b00 [#2206] Relax bounds of R on Executor.newRecord() from TableRecord<R> to
Record
2013-02-15 20:54:41 +01:00
Lukas Eder
e3ec046490 [#2202] Add Mock JDBC objects for unit testing with jOOQ 2013-02-15 20:49:03 +01:00
Lukas Eder
2b3fb59dbe [#2204] Add BatchBindStep.bind(Object[][]) to bind lots of bind values
at a time
2013-02-15 18:17:00 +01:00
Lukas Eder
3e2778122c [#2203] Add Executor.map(Schema) and Executor.map(Table) as a
convenience to apply runtime schema mapping
2013-02-15 17:57:56 +01:00
Lukas Eder
ff12bbc730 [#2199] Allow for INSERT and UPDATE of pre-existing records through SET
[ Record ] clauses
2013-02-15 12:17:04 +01:00
Lukas Eder
82a0d99b92 [#2197] Relax bounds on Factory.groupingSets(Collection<Field<?>>...) to
Collection<? extends Field<?>>...
2013-02-14 01:01:50 +01:00
Lukas Eder
4d87dd6ee6 [#2187] Change all Javadoc <h3/> tags to <h5/> 2013-02-13 17:47:01 +01:00
Lukas Eder
cea755069d [#834] Add support for the Firebird / Postgres UPDATE .. RETURNING
clause
2013-02-12 16:22:04 +01:00
Lukas Eder
fba595a302 [#1977] Remove the confusing concept of having a "main key" as opposed
to a "primary key"
2013-02-12 12:30:11 +01:00
Lukas Eder
70befb4625 [#1309] Let Factory.val() return Param<T> instead of Field<T> -
Fixed regression
2013-02-12 11:32:04 +01:00
Lukas Eder
5bd9a61f16 [#1309] Let Factory.val() return Param<T> instead of Field<T> 2013-02-12 11:18:46 +01:00
Lukas Eder
ee5b589361 Added comment to document this "weird casting technique" 2013-02-11 17:17:10 +01:00
Lukas Eder
e732efcbdc Corrected Javadoc to have a first line ending with a period (".") as
required by the Javadoc specs
2013-02-11 17:03:10 +01:00
Lukas Eder
92b7d42ffd [#1663] Document RenderContext and make it part of the public API 2013-02-11 15:39:24 +01:00
Lukas Eder
ad4378ec57 [#2160] [#2161] Add Executor.batchInsert,
batchUpdate(UpdatableRecord<?>...) to mass-insert/update a set of
UpdatableRecords
2013-02-09 18:24:14 +01:00
Lukas Eder
66dd5f25e9 [#1686] Add UpdatableRecord.insert() and update() 2013-02-09 17:48:05 +01:00
Lukas Eder
304865bbdf [#2177] Add ResultQuery.intern() and Result.intern() for string
interning in result sets
2013-02-09 16:42:29 +01:00
Lukas Eder
ee93716c63 Avoid potential NPE 2013-02-09 15:22:03 +01:00
Lukas Eder
af57fd1e48 [#2180] Optimise DAOImpl by using the new ReflectionMapper instead of
calling Record.into() all the time
2013-02-09 15:20:01 +01:00
Lukas Eder
db3049fd48 [#2179] Add Javadoc to QueryPart.hashCode() and equals() 2013-02-09 12:04:17 +01:00
Lukas Eder
345c44f656 [#2178] Improve FieldList. Avoid creating excessive array lists, where
simple (immutable) Field<?>[] are sufficient - Removed unnecessary
FieldList
2013-02-09 11:26:18 +01:00
Lukas Eder
058151a756 [#2178] Improve FieldList. Avoid creating excessive array lists, where
simple (immutable) Field<?>[] are sufficient - Removed dependency
between SelectFieldList and FieldList
2013-02-08 19:12:58 +01:00
Lukas Eder
7ce2b9d8c5 [#2178] Improve FieldList. Avoid creating excessive array lists,
where simple (immutable) Field<?>[] are sufficient - More
improvements leading to another 50% performance increase
2013-02-08 19:10:49 +01:00
Lukas Eder
7acb6ebe8c [#2178] Improve FieldList. Avoid creating excessive array lists,
where simple (immutable) Field<?>[] are sufficient - Introduced
org.jooq.impl.Fields as a wrapper for Field<?>[]. Executor.newRecord()
is accelerated by 50%!
2013-02-08 13:08:41 +01:00
Lukas Eder
d51a7b53dc Removed AbstractFieldProviderQueryPart 2013-02-08 12:24:06 +01:00
Lukas Eder
9da6913287 Avoid lazy initialisation of AbstractRecord.values 2013-02-08 12:23:30 +01:00
Lukas Eder
9ba4be6161 Optimised SortFieldList's copying of non-sort fields 2013-02-08 11:41:05 +01:00
Lukas Eder
c34aa7866c Optimised JoinTable's copying of lhs and rhs fields 2013-02-08 11:36:53 +01:00
Lukas Eder
db826c5cf6 Renamed internal method 2013-02-08 11:30:19 +01:00
Lukas Eder
1fe3fb0bd3 [#1887] Remove all deprecated code 2013-02-07 16:01:44 +01:00
Lukas Eder
32a166a198 [#2172] Add <T> set(Field<T>, Select<? extends Record1<T>>) methods
to UPDATE, MERGE and INSERT statements
2013-02-07 15:29:14 +01:00
Lukas Eder
d0e471e857 Some local formatting 2013-02-07 14:54:29 +01:00
Lukas Eder
e7c38b12bd [#2162] Add some more Javadoc to JooqLogger 2013-02-07 14:50:32 +01:00
Lukas Eder
decf60f0d6 [#2171] Allow for converting booleans to numbers through
org.jooq.tools.Convert: TRUE => 1, FALSE => 0
2013-02-07 14:00:36 +01:00
Lukas Eder
a1d15b13d2 [#2170] Add 0.0 and 1.0 to Convert.FALSE_VALUES and Convert.TRUE_VALUES 2013-02-07 13:45:00 +01:00
Lukas Eder
70d7c3fac7 [#2167] Convert.convert("xx", boolean.class) returns null, instead of
false
2013-02-07 13:38:36 +01:00
Lukas Eder
7af3fe112e [#1926] Add <T1, T2, ..., T[N]> MergeXXXStep<R, T1, T2, ..., T[N]>
Executor.mergeInto(Table<?>, Field<T1>, Field<T2>, ..., Field<TN>)
2013-02-07 11:53:34 +01:00
Lukas Eder
d718f61059 [#1921] Add <T1, T2, ..., T[N]> InsertValuesStep[N]<R, T1, T2, ...,
T[N]> Executor.insertInto(Table<R>, Field<T1>, Field<T2>, ...,
Field<TN>)
2013-02-05 18:20:57 +01:00
Lukas Eder
074c3055d4 Fixed INSERT Javadoc 2013-02-05 16:41:13 +01:00
Lukas Eder
5d1a98b49d [#1886] Query.bind() has no effect when Query.keepStatement(true)
and StatementType.STATIC_STATEMENT are combined
2013-02-05 14:53:48 +01:00
Lukas Eder
1b0d7c08b9 [#1626] Explicitly implement hashCode() and equals() in some
additional QueryParts
2013-02-05 14:06:29 +01:00
Lukas Eder
4ecb5b6614 Improved package-info Javadoc. There should be a period after the first
line
2013-02-05 12:18:04 +01:00
Lukas Eder
649954e76c [#2159] Let ExecuteListener extend Serializable 2013-02-04 20:45:49 +01:00
Lukas Eder
86e581c869 [#1578] Change configuration of ExecuteListeners in Configuration.
Listeners instances should be provided, not classes
2013-02-04 20:39:43 +01:00
Lukas Eder
be484c39bf [#1974] Optimise various Executor.fetchOne() methods, which consume
the whole ResultSet before throwing an InvalidResultException
2013-02-04 19:08:07 +01:00
Lukas Eder
b6cd1e4a94 [#2158] Add Executor.fetchLazy(Table) and fetchLazy(Table, Condition)
for convenience
2013-02-04 19:08:02 +01:00
Lukas Eder
e792c72173 [#1902] Duplicate SELECT API between Executor and Factory 2013-02-04 18:44:18 +01:00
Lukas Eder
1e3fb6d289 [#2157] Change the bounds of various <H extends RecordHandler<R>> H
fetchInto(H handler) methods to RecordHandler<? super R>
2013-02-04 17:25:08 +01:00
Lukas Eder
11f61d7958 Fixed warning 2013-02-04 16:30:25 +01:00
Lukas Eder
adc8a474b4 [#1170] Improve performance on jOOQ's reflection usage - Access
record values by index, rather than by field, to further improve
performance
2013-02-04 16:29:43 +01:00
Lukas Eder
d62d6c5994 [#2154] Generated Records should access values by index, not by
field, for performance reasons
2013-02-04 16:22:00 +01:00
Lukas Eder
27f8eca2c4 [#2156] Add Row.type(int), type(String), dataType(int), dataType(String)
for convenience
2013-02-04 15:55:37 +01:00
Lukas Eder
54883e3b37 [#1170] Improve performance on jOOQ's reflection usage 2013-02-01 20:46:48 +01:00
Lukas Eder
9008936138 Improved performance of RowImpl.indexOf() and similar operations,
resulting in a 60% performance gain in a relevant Record.setValue(),
Record.getValue() benchmark
2013-02-01 14:41:24 +01:00
Lukas Eder
8f915549ca [#2144] Improve AbstractField.equals() and AbstractTable.equals() -
null-safe equals() checks
2013-02-01 14:14:06 +01:00
Lukas Eder
f4adc38d8e Improved performance of AbstractRecord.fieldsRow(), resulting in a
14% performance gain in a relevant Record.setValue(),
Record.getValue() benchmark
2013-02-01 14:08:59 +01:00
Lukas Eder
212e3c81a6 [#2145] Improve QueryPartList.removeNulls() as this is called very often 2013-01-31 17:38:41 +01:00
Lukas Eder
5a94b69ea0 [#2144] Improve AbstractField.equals() and AbstractTable.equals()
and similar, as these two are called very often
2013-01-31 17:35:20 +01:00
Lukas Eder
c00cc802c5 [#2137] Failure to assign a value to a record pojo for a column with
a composite type when using select into.
2013-01-31 14:37:23 +01:00
Lukas Eder
8af06e0836 [#2139] batchStore with composite types incorrectly reuses values from
the first record.
2013-01-31 13:15:08 +01:00
Lukas Eder
a97eb571c1 [#2128] Misleading Javadoc in Factory / Executor.selectCount() 2013-01-30 12:01:28 +01:00
Lukas Eder
16dbbf66ac Merge pull request #2127 from joe776/master
Fix a typo in an exception message
2013-01-18 18:01:28 -08:00
Joerg Schoenfisch
a2d95df6d4 Fix a typo in an exception message 2013-01-18 12:51:57 +01:00
Lukas Eder
33ff9de311 [#2112] Add Row.types() and Row.dataTypes() as a convenience 2013-01-11 17:59:07 +01:00
Lukas Eder
7d00425231 [#2118] Let Row extend Iterable<Field<?>> 2013-01-11 17:50:46 +01:00
Lukas Eder
5a63eaaa03 [#2119] Rename Row.getDegree() to Row.size() 2013-01-11 17:43:53 +01:00
Lukas Eder
711d46c73d [#2117] Remove the FieldProvider marker interface. Simplify the
FieldProvider API
2013-01-11 17:40:48 +01:00
Lukas Eder
d5c7e714d1 [#2113] Document Record.hashCode() and equals() through Javadoc 2013-01-11 11:17:12 +01:00
Lukas Eder
3030a5e792 [#2107] Let Record implement Comparable 2013-01-09 15:26:10 +01:00
Lukas Eder
084fbf04a7 [#2111] Improve org.jooq.Record Javadoc, to explain the various Record
subtypes
2013-01-09 13:00:01 +01:00
Lukas Eder
6fefe2afe3 [#2108] SQLite returns NULL for val(new Date(0)).add(-1) and some other
date time arithmetic expressions
2013-01-08 21:41:11 +01:00
Lukas Eder
a97d3eaaaa [#1801] Add Table.as(String, String...) to allow for creating a table
aliases (correlation names) with derived column lists - Simulate this
for all SQL dialects
2013-01-08 11:00:05 +01:00
Lukas Eder
7da8507ea4 Fixed typo 2013-01-08 10:35:59 +01:00
Lukas Eder
3c4b88a2a9 [#1801] Add Table.as(String, String...) to allow for creating a table
aliases (correlation names) with derived column lists - Simulate this
for all SQL dialects
2013-01-07 23:46:12 +01:00
Lukas Eder
3ceea69651 Fixed typo 2013-01-06 18:15:20 +01:00
Lukas Eder
43cb9fb520 [#2098] NullPointerException when org.jooq.impl.EnumConverter
converts null
2013-01-06 17:49:08 +01:00
Lukas Eder
c34efabcf2 [#1624] Add support for java.util.UUID as a <T> type - Added comment 2013-01-06 17:32:15 +01:00
Lukas Eder
0bed3ba74c [#1235] SQLite BIGINT data type erroneously maps to java.math.BigInteger 2013-01-06 17:00:27 +01:00
Lukas Eder
59c41a66d5 [#2085] java.lang.NoSuchMethodError:
org.apache.log4j.Logger.isTraceEnabled()Z when logger dependency is
missing
2013-01-06 16:11:13 +01:00
Lukas Eder
d7ee1f1326 [#1624] Add support for java.util.UUID as a <T> type 2013-01-06 14:16:32 +01:00
Lukas Eder
5aa77b3827 [#1624] Add support for java.util.UUID as a <T> type - Added
Postgres support, which is straightforward
2013-01-05 10:30:23 +01:00
Lukas Eder
58c8a8df7c [#2091] CUBRID doesn't really have a NVARCHAR data type 2013-01-04 17:12:20 +01:00
Lukas Eder
823657cb29 [#1887] Remove all deprecated code 2013-01-04 16:43:43 +01:00
Lukas Eder
102649585f [#2089] Generate an "empty" DefaultSchema for those databases that do
not have any schema (CUBRID, Firebird, SQLite)
2013-01-04 16:18:33 +01:00
Lukas Eder
03e42f36d2 [#1968] Add org.jooq.Meta returned from Executor.meta() to return a
wrapped JDBC DatabaseMetaData object - Fixed issue with databases that
do not have any schema
2013-01-04 15:24:02 +01:00
Lukas Eder
5c97482f4c [#1887] Remove all deprecated code 2013-01-04 14:44:26 +01:00
Lukas Eder
993843ccd6 [#2086] SQL syntax error when aliasing outcome of a relational division 2013-01-04 13:35:20 +01:00
Lukas Eder
2dd4517be0 Avoid returning internal type, if possible 2013-01-04 13:22:10 +01:00
Lukas Eder
3c520c03b6 [#2082] Oracle PIVOT expression doesn't bind any variables of a derived
table being pivoted
2013-01-04 12:09:20 +01:00
Lukas Eder
6ea236e217 [#1801] Add Table.as(String, String...) to allow for creating a
table aliases (correlation names) with derived column lists
2013-01-03 23:29:08 +01:00
Lukas Eder
c9d12d8850 [#915] Add <T1, T2, ..., T[N]> Table<Record[N]<T1, T2, ..., T[N]>>
Factory.values(Row[N]<T1, T2, ..., T[N]>...), to create ad-hoc
tables from data - Simulate VALUES() using SELECT .. UNION ALL SELECT ..
where VALUES() is unavailable
2013-01-03 23:26:58 +01:00
Lukas Eder
e7235b6e03 [#2052] Add [not]Between[Symmetric]() to Row[N] types - Added fix
for MySQL
2013-01-03 23:04:13 +01:00
Lukas Eder
74e7051be3 [#1801] Add Table.as(String, String...) to allow for creating a table
aliases (correlation names) with derived column lists - Simulate derived
column lists for Oracle using CTE's
2013-01-03 21:13:53 +01:00
Lukas Eder
318d06ed75 [#915] Add <T1, T2, ..., T[N]> Table<Record[N]<T1, T2, ..., T[N]>>
Factory.values(Row[N]<T1, T2, ..., T[N]>...), to create ad-hoc tables
from data
 - Added test case
 - Improved Javadoc
2013-01-03 20:40:52 +01:00
Lukas Eder
b84c0060b9 Changed year number in copyright to 2013 2013-01-03 12:05:32 +01:00
Lukas Eder
abe359d859 [#2078] Add Postgres to @Support annotation of
SelectForUpdateWaitStep.wait()
2013-01-02 19:37:00 +01:00
Lukas Eder
1999c73065 Fixed compiler warning 2013-01-02 17:48:06 +01:00
Lukas Eder
6e140fd115 [#1801] Add Table.as(String, String...) to allow for creating a table
alias with aliased fields - Added some more Javadoc
2013-01-02 17:47:04 +01:00
Lukas Eder
36554005ec [#1801] Add Table.as(String, String...) to allow for creating a
table alias with aliased fields - Added a workaround for SQL Server,
Sybase
2013-01-02 17:40:25 +01:00
Lukas Eder
c51ed4d5df [#2056] Add Field.[not]Between[Symmetric](Select<? extends Record1<T>>)
methods to allow for specifying subselects as arguments to the BETWEEN
predicate - Added fix for SQLite
2013-01-02 17:31:03 +01:00
Lukas Eder
ffae7e756d [#1801] Add Table.as(String, String...) to allow for creating a
table alias with aliased fields - Added a workaround for CUBRID,
Firebird
2013-01-02 17:03:34 +01:00
Lukas Eder
3e793fe4fd - Fixed @Support annotation for RVE-related predicates taking a
subselect on the RHS: CUBRID doesn't really support RVE's
2013-01-02 15:57:16 +01:00
Lukas Eder
48b25650b4 [#1801] Add Table.as(String, String...) to allow for creating a
table alias with aliased fields - Added API and tests that work for
Postgres
2013-01-02 14:39:17 +01:00
Lukas Eder
ae7aad93d5 [#915] Add <T1, T2, ..., T[N]> Table<Record[N]<T1, T2, ..., T[N]>>
Factory.values(Row[N]<T1, T2, ..., T[N]>...), to create ad-hoc tables
from data - Updated generated Factory code
2013-01-02 12:09:14 +01:00
Lukas Eder
bdf031af56 [#2072] Let UDTRecordImpl and ArrayRecordImpl.toString() return a valid
constructor expression
2013-01-02 10:52:50 +01:00
Lukas Eder
020e1958a4 Work around a SQL Server JDBC driver problem by manually coercing JDBC
DatabaseMetaData.getColumns() data types
2012-12-29 17:41:16 +01:00
Lukas Eder
e0b5fa2d66 [#1144] Overload Executor.fetch[One|Lazy](ResultSet, X...) with X being
Field<?>, DataType<?>, Class<?>
2012-12-29 17:32:10 +01:00
Lukas Eder
d8fe5ffee2 [#2052] Add [not]Between[Symmetric]() to Row[N] types - Added fix for
SQL Server
2012-12-29 17:12:36 +01:00
Lukas Eder
0bcee0f17f [#2052] Add [not]Between[Symmetric]() to Row[N] types - Fix for Sybase 2012-12-29 16:15:20 +01:00
Lukas Eder
32c6024fe6 [#2053] Add is[Not]Null() to Row[N] types - Fix for Sybase 2012-12-29 16:13:53 +01:00
Lukas Eder
2ddccf8f80 [#1178] Allow for treating Condition as Field<Boolean> - Fix for Sybase 2012-12-29 16:12:51 +01:00
Lukas Eder
057064ad46 [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Fix for Sybase 2012-12-29 16:11:31 +01:00
Lukas Eder
708d52a114 [#1883] Derby OVERLAPS predicate doesn't work for (DATE, INTERVAL)
tuples
2012-12-29 16:01:37 +01:00
Lukas Eder
57c1d5d7d7 [#1905] Add Row[N].equal(Select<? extends Record[N]>) and similar
methods - Work around H2's missing row value expression support by
rendering an array in subselects of RVE predicates
2012-12-29 14:57:39 +01:00
Lukas Eder
372b1df203 [#2066] Add Executor.bindValues(QueryPart) to extract bind values in the
context of an Executor (i.e. Configuration)
2012-12-28 19:48:47 +01:00
Lukas Eder
fa52ecd05f [#2057] Cannot properly extract bind values for LIMIT .. OFFSET clause
from a SELECT statement
2012-12-28 16:11:54 +01:00
Lukas Eder
d532cfed3c [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Fix for Firebird 2012-12-28 16:05:26 +01:00
Lukas Eder
7dcefc62d6 [#2053] Add is[Not]Null() to Row[N] types - Fix for Firebird 2012-12-28 16:05:10 +01:00
Lukas Eder
afaf5ed011 [#2052] Add [not]Between[Symmetric]() to Row[N] types - Fixed this for
Firebird
2012-12-28 16:04:54 +01:00
Lukas Eder
f097801a98 [#1178] Allow for treating Condition as Field<Boolean> - Fix for
Firebird
2012-12-28 15:59:49 +01:00
Lukas Eder
02f45c6439 [#2055] MySQL's UPDATE [t1] JOIN [t2] syntax can cause syntax errors as
column references are not fully qualified
2012-12-28 15:39:40 +01:00
Lukas Eder
01dfb38317 [#2060] Remove redundant SimpleSelectXXX API
- Removed API elements
- Clean up SELECT type hierarchy
2012-12-28 11:31:12 +01:00
Lukas Eder
1660dce03d [#2052] Add [not]Between[Symmetric]() to Row[N] types 2012-12-26 16:23:47 +01:00
Lukas Eder
70e4ff1aa8 Added missing Support annotations 2012-12-26 16:23:04 +01:00
Lukas Eder
f955bb295f Improved MetaImpl performance 2012-12-24 15:15:33 +01:00
Lukas Eder
10c116c6de Fix issue with Oracle JDBC's internal LIKE .. ESCAPE '/' 2012-12-24 14:49:46 +01:00
Lukas Eder
b33bbcdf7c [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Added
integration tests for RVE [>, >=, <, <=] (SELECT ...)
2012-12-24 14:35:17 +01:00
Lukas Eder
a2a32c71d5 [#2049] Add gt() / ge() / lt() / le() to Row[N] types 2012-12-24 14:20:17 +01:00
Lukas Eder
35bcc425a6 [#2053] Add is[Not]Null() to Row[N] types 2012-12-24 12:07:15 +01:00
Lukas Eder
acf270d1f5 [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Renamed newly
factored out conditions
2012-12-24 10:27:54 +01:00
Lukas Eder
20aa6e512a [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Factored out
RowIn nested class to top-level type
2012-12-24 10:26:01 +01:00
Lukas Eder
b76289ea02 [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Factored out
RowSubquery nested class to top-level type
2012-12-24 10:18:41 +01:00
Lukas Eder
b2df9b7d6d [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Factored out
RowCompare nested class to top-level type
2012-12-24 10:15:13 +01:00
Lukas Eder
d228355c03 [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Factored out
RowOverlaps nested class to top-level type
2012-12-23 10:42:54 +01:00
Lukas Eder
e1ce0fa058 [#2049] Add gt() / ge() / lt() / le() to Row[N] types - Improved Javadoc 2012-12-23 09:59:08 +01:00
Lukas Eder
df56195479 [#2050] Re-declare QueryPart.toString() in order to add some Javadoc 2012-12-23 09:27:13 +01:00
Lukas Eder
d3b654c2fb Improved Javadoc 2012-12-22 22:30:12 +01:00
Lukas Eder
5cfde0af20 [#2045] Bad hashCode calculation when Records contain arrays or byte[] 2012-12-22 20:46:49 +01:00
Lukas Eder
d756297151 [#2044] Add various TableRecord.fetchParent(...), fetchChild(...) and
fetchChildren(...) methods to follow foreign key relationships
2012-12-22 20:39:49 +01:00
Lukas Eder
f958e32075 [#2007] Bad type coercion on the right hand side of a comparison
predicate, when the left hand side is Field<Object>
2012-12-22 09:47:01 +01:00
Lukas Eder
8b6e4f2a27 Added Javadoc to internal method 2012-12-22 09:46:27 +01:00
Lukas Eder
8ccad9947a Improved DefaultDataType.toString() 2012-12-22 09:25:48 +01:00
Lukas Eder
fa7edefc65 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Added convenience method DataType.precision(int precision, int scale)
2012-12-22 08:39:06 +01:00
Lukas Eder
d7587ee4d7 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes
- Adapted DataType.equals() and hashCode() to consider precision,
scale, and length
 - Consider precision, scale, and length when casting fields/values to a
custom DataType
2012-12-21 23:32:25 +01:00
Lukas Eder
1161afbad1 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Added support for precision, scale, and length information in
org.jooq.Meta
2012-12-21 22:40:18 +01:00
Lukas Eder
70a0ab3f44 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes
- Let code generator generate precision, scale, and length information
 - Let MetaDataFieldProvider read precision, scale, and length
information from JDBC meta data
2012-12-21 22:35:26 +01:00
Lukas Eder
3d63aa82a0 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Added the precision/scale/length API
2012-12-21 21:58:10 +01:00
Lukas Eder
e9a2308105 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Changed constructor signatures
2012-12-21 21:42:52 +01:00
Lukas Eder
9b9f105417 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Removed SQLDataType from the DataType type hierarchy
2012-12-21 21:36:39 +01:00
Lukas Eder
899c76280e [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Removed generic type parameter <T> from [SQLDialect]DataType
2012-12-21 21:20:47 +01:00
Lukas Eder
a50307089d [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes
- Removed deprecated method from [SQLDialect]DataType
 - Regenerated various schemata
2012-12-21 21:09:57 +01:00
Lukas Eder
623ee20bb6 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes
- Renamed AbstractDataType to DefaultDataType, made it non-abstract
- Removed [SQLDialect]DataType from DefaultDataType's type hierarchy
2012-12-21 20:54:14 +01:00
Lukas Eder
e3de50d152 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Merged FieldTypeHelper into Utils
2012-12-21 20:22:02 +01:00
Lukas Eder
b7035db761 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Made FieldTypeHelper package-private
2012-12-21 19:53:09 +01:00
Lukas Eder
a007ba599d [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Removed unneeded DataType.getType(int, int)
2012-12-21 19:51:31 +01:00
Lukas Eder
79336d9074 Added some documentation to AbstractDataType's internals 2012-12-21 19:01:34 +01:00
Lukas Eder
003bc5d903 [#456] Add runtime support for PRECISION, SCALE, and LENGTH attributes -
Removed some obsolete DataType API parts
2012-12-21 18:50:22 +01:00
Lukas Eder
6f001e1798 Moved some useful JDBC utility methods from FieldTypeHelper to the
public JDBCUtils class
2012-12-21 18:25:41 +01:00
Lukas Eder
83c197e859 Fixed probable bug 2012-12-21 18:20:18 +01:00
Lukas Eder
c363269a31 Refactored internal constant names 2012-12-21 14:42:40 +01:00
Lukas Eder
a8d6705f37 [#1979] Thread safety issue in org.jooq.impl.FieldList 2012-12-21 14:35:27 +01:00
Lukas Eder
5f8635908a Fixed wrong @Support(DB2) annotation for row value expression comparison
predicates and also relevant test case
2012-12-20 18:09:24 +01:00
Lukas Eder
43417d5874 [#1178] Allow for treating Condition as Field<Boolean> 2012-12-20 17:30:18 +01:00
Lukas Eder
102f6065f6 [#1097] Add org.jooq.Catalog, a type modelling an entity combining
several org.jooq.Schema
2012-12-20 16:51:13 +01:00
Lukas Eder
b7016bd581 [#1703] Add Executor.batchDelete(UpdatableRecord<?>...) to mass-delete a
set of UpdatableRecords
2012-12-20 16:29:06 +01:00
Lukas Eder
09b379103f [#2031] Change union(Select<R>) and similar methods to union(Select<?
extends R>)
2012-12-20 15:05:03 +01:00
Lukas Eder
3ac1764ea5 Re-arranged methods for later code generation through Xtend 2012-12-20 15:02:54 +01:00
Lukas Eder
d4da8c72b0 [#2028] Add Batch.size() to indicate the number of queries that will be
executed by a batch operation
2012-12-20 13:42:40 +01:00
Lukas Eder
fddd972465 [#2030] Add reusable wrapper types for JDBC Connection, Statement,
ResultSet, etc.
2012-12-20 13:31:40 +01:00
Lukas Eder
2f427a4520 [#1549] Externalise connection lifecycle through new ConnectionProvider 2012-12-20 13:06:51 +01:00
Lukas Eder
0977fccd6d [#2001] Named Params are treated as null literals on right sides of
comparisons
2012-12-17 20:49:42 +01:00
Lukas Eder
56d1dd1250 [#2021] Add UpdatableRecord.refresh(Field<?>...) to allow for refreshing
a subset of the Record's values
2012-12-15 16:00:38 +01:00
Lukas Eder
88bdc09a8c Removed some redundancy 2012-12-15 13:57:39 +01:00
Lukas Eder
4c5e9efb59 [#2020] Let org.jooq.ExecuteListener extend java.util.EventListener 2012-12-15 13:50:17 +01:00
Lukas Eder
b4178b5dc7 Don't inline constant 2012-12-14 16:02:20 +01:00
Lukas Eder
90e135d013 [#1924] Add support for CUBRID 9.0's ENUM data type 2012-12-14 15:41:37 +01:00
Lukas Eder
007755e46e formatting 2012-12-14 13:33:10 +01:00
Lukas Eder
7b295878e1 [#2011] Implement some micro-optimisations in DefaultRenderContext - 3.
Escaping of quoted literals
2012-12-14 13:25:23 +01:00
Lukas Eder
2268afa4ab [#2011] Implement some micro-optimisations in DefaultRenderContext - 2.
Regular expression usage for indentation
2012-12-14 13:10:04 +01:00
Lukas Eder
4fdf22e710 [#2000] Add Record.reset(), reset(Field<?>), reset(int), reset(String)
to restore original values in a record
2012-12-12 22:09:05 +01:00
Lukas Eder
2f63650bb7 [#1999] Add Record.changed(boolean) changed(boolean, Field<?>)
changed(boolean, int) changed(boolean, String) as setters for the
changed flag
2012-12-12 19:35:00 +01:00
Lukas Eder
e4ed930fd7 [#1995] Record.original() values aren't updated after a Record.store()
operation
2012-12-09 22:33:28 +01:00
Lukas Eder
9e9cdf5c8f [#1987] Allow for reading data from Iterables, arrays, Maps through
Record.from() - Added support for loading from arrays
2012-12-02 12:57:40 +01:00
Lukas Eder
b05ae01be9 [#1988] Add Record.fromArray() as the inverse operation of
Record.intoArray()
2012-12-02 12:53:22 +01:00
Lukas Eder
2aa2e69ea2 [#1991] Reflect changed flag in Result.toString() (and thus also
Record.toString())
2012-12-02 12:35:14 +01:00
Lukas Eder
8f2633f5d9 [#1990] Add <T> T Record.original(Field<T>), original(int),
original(String) to get a field's original value
2012-12-02 12:28:01 +01:00
Lukas Eder
c6e3b61aca [#1989] Add Record.changed(Field<?>), changed(int), changed(String) to
check whether a single field's value has changed
2012-12-02 12:16:55 +01:00
Lukas Eder
66e4716794 [#1987] Allow for reading data from Iterables, arrays, Maps through
Record.from() - Enhanced from() to read maps
2012-12-02 12:09:04 +01:00
Lukas Eder
dff2ca12a3 Removed unnecessary warning suppressions 2012-12-02 10:33:20 +01:00
Lukas Eder
962a0226c9 [#1982] Change RenderNameStyle.UPPER, LOWER, AS_IS to quote literals if
needed
2012-11-30 13:01:15 +01:00
Lukas Eder
e8b0133cdf [#1986] Add Record.fromMap() as the inverse operation of
Record.intoMap()
2012-11-30 12:01:09 +01:00
Lukas Eder
fb0127bc6f Added missing "final" keyword 2012-11-30 11:51:03 +01:00
Lukas Eder
a209da8676 [#1636] Add jooq-meta support for querying the JDBC DatabaseMetaData API
- Fixed DECIMAL data type handling
2012-11-30 11:34:03 +01:00
Lukas Eder
073f90648f [#1636] Add jooq-meta support for querying the JDBC DatabaseMetaData API 2012-11-30 11:25:26 +01:00
Lukas Eder
46f5d7c0e6 [#1983] Improve the Javadoc on Table.as() and Field.as() to hint at
case-sensitivity and RenderNameStyle
2012-11-28 19:57:06 +01:00
Lukas Eder
92d483b83e [#1984] Add ResultQuery.fetchOneInto() 2012-11-28 19:28:04 +01:00
Lukas Eder
3d9dd31058 [#1972] Move MySQLFactory.md5() to Factory and simulate it for Oracle -
Use DBMS_CRYPTO instead of DBMS_OBFUSCATION_TOOLKIT
2012-11-23 15:44:19 +01:00
Lukas Eder
7f45eb66f5 [#1976] Add FieldProvider.getIndex(String) 2012-11-23 13:37:04 +01:00
Lukas Eder
7aa56936f1 [#1972] Move MySQLFactory.md5() to Factory and simulate it for Oracle -
Enhanced Javadoc
2012-11-23 13:16:53 +01:00
Lukas Eder
c6468f6779 [#1972] Move MySQLFactory.md5() to Factory and simulate it for Oracle 2012-11-23 13:11:45 +01:00
Lukas Eder
d7aa549ab1 [#1968] Add org.jooq.Meta returned from Executor.meta() to return a
wrapped JDBC DatabaseMetaData object - Added some Javadocs
2012-11-23 12:57:07 +01:00
Lukas Eder
cde26c3af9 [#1097] Add org.jooq.Catalog, a type modelling an entity combining
several org.jooq.Schema
- Added CatalogImpl
- Added getCatalogs() to Meta
2012-11-23 12:54:57 +01:00
Lukas Eder
764338f03b [#1097] Add org.jooq.Catalog, a type modelling an entity combining
several org.jooq.Schema - Added parts of the API
2012-11-23 12:43:48 +01:00
Lukas Eder
02ccfc766d [#1968] Add org.jooq.Meta returned from Executor.meta() to return a
wrapped JDBC DatabaseMetaData object
2012-11-23 12:41:19 +01:00
Lukas Eder
e1ca385651 [#1975] Add Result.sort{Asc | Desc}(int) and (String) to order by field
index / name Edit
2012-11-23 12:20:15 +01:00
Lukas Eder
3d020492b6 [#1973] Add Executor.fetchOne(ResultSet) 2012-11-23 11:54:25 +01:00
Lukas Eder
c303a019bd [#1967] Document using MySQL's SQL_CALC_FOUND_ROWS as an Oracle hint 2012-11-12 19:54:27 +01:00
Lukas Eder
0789a832c7 [#1919] Support higher degrees of Row[N] and Record[N] types. Match
Scala's max degree of 22
2012-11-11 12:34:43 +01:00
Lukas Eder
83feae654e [#1906] Use Xtend to generate Row[N], Record[N] and other code
artefacts - Added Update / Scala Conversions code generation
2012-11-11 12:20:50 +01:00
Lukas Eder
a96282f0fa [#1906] Use Xtend to generate Row[N], Record[N] and other code artefacts
- Added more Factory generation code
2012-11-11 11:31:48 +01:00
Lukas Eder
8415677d17 [#1906] Use Xtend to generate Row[N], Record[N] and other code artefacts
- Added Factory code generation (code insertion)
2012-11-10 15:40:51 +01:00
Lukas Eder
dd71da7929 [#1906] Use Xtend to generate Row[N], Record[N] and other code artefacts
- Use Xtend to generate RecordImpl
2012-11-10 14:48:58 +01:00
Lukas Eder
a476ac1957 [#1906] Use Xtend to generate Row[N], Record[N] and other code artefacts
- Added generation support for Record[N]
2012-11-10 14:38:36 +01:00
Lukas Eder
16b4c68a0e [#1966] Add a Row[N].equal(Record[N]) and similar convenience methods 2012-11-10 14:24:15 +01:00
Lukas Eder
7f31b11909 [#1966] Add a Row[N].equal(Record[N]) and similar convenience methods -
Implemented this for degree = 1. Need a code generator!
2012-11-10 11:32:09 +01:00
Lukas Eder
d94d8cba3c [#1690] Add UpdatableRecord.key() returning a Record holding PK values 2012-11-10 11:18:07 +01:00
Lukas Eder
eb8e865822 [#1962] Improve formatting of window functions - Allow to override the
formatting flag
2012-11-09 18:52:41 +01:00
Lukas Eder
dc9d3d314f [#1907] Remove FactoryOperations, push its API down to
org.jooq.impl.Executor - Documented DataAccessException
2012-11-09 18:36:19 +01:00
Lukas Eder
8f9359f62e [#1907] Remove FactoryOperations, push its API down to
org.jooq.impl.Executor
2012-11-09 18:30:50 +01:00
Lukas Eder
c28255ef86 [#1904] Add Executor.fetch(ResultQuery) and Executor.execute(Query)
methods
2012-11-09 17:55:16 +01:00
Lukas Eder
77896b0fe1 Improved Javadoc 2012-11-09 17:42:53 +01:00
Lukas Eder
fd8fe4c589 [#1951] Add support for SQL Server WITH (...) table hints 2012-11-09 17:16:48 +01:00
Lukas Eder
7c731f93b3 Added missing final keyword 2012-11-09 16:54:37 +01:00
Lukas Eder
54ed7cac9e [#1954] Bad SQL rendered when combining ORDER BY [ some-function ]
with LIMIT .. OFFSET in DB2, SQL Server
2012-11-09 16:30:30 +01:00
Lukas Eder
01f872f06f [#1958] Bad SQL rendered for OVER (ORDER BY [ some-function ]) for SQL
Server and Sybase
2012-11-09 15:38:37 +01:00
Lukas Eder
81d18ecf06 [#1954] Bad SQL rendered when combining ORDER BY [ some-function ] with
LIMIT .. OFFSET in DB2, SQL Server - Workaround for DB2: Avoid ORDER BY
clause in ROW_NUMBER() ranking function
2012-11-09 13:39:54 +01:00
Lukas Eder
d39a5dcb1c [#1937] Inefficient implementations of AbstractDataType.equals() and
hashCode()
2012-11-06 23:36:50 +01:00
Lukas Eder
a70ba0f67f [#1942] Inefficient call to String.split() in StringUtils.toCamelCase()
leads to non-negligible performance overhead in POJO transformation
calls
2012-11-06 23:24:44 +01:00
Lukas Eder
041407b965 [#1938] Improve AbstractField.hashCode() and AbstractTable.hashCode()
and similar, as these two are called very often
2012-11-06 23:00:01 +01:00
Lukas Eder
78184bef2a Document IndexOutOfBoundsException, IllegalArgumentException,
DataTypeException
2012-11-02 17:48:34 +01:00
Lukas Eder
3ff3995fac [#1927] Problems with escaping backslashes in CSV export/import 2012-11-02 16:09:58 +01:00
Lukas Eder
7302d07341 [#1923] Add Record.intoResultSet() to create a single-record JDBC
ResultSet from a Record
2012-11-02 14:04:33 +01:00
Lukas Eder
27a3073b10 [#1917] Add support for CUBRID 9.0's new features - Added and documented
support for CUBRID MERGE statement (Oracle syntax extensions)
2012-11-02 13:31:41 +01:00
Lukas Eder
4aa381f842 [#1917] Add support for CUBRID 9.0's new features - Added support and
documentation for CUBRID's MERGE support
2012-11-02 13:17:09 +01:00
Lukas Eder
eec85836c5 [#1917] Add support for CUBRID 9.0's new features - Added and documented
support for CUBRID window functions
2012-11-02 13:05:33 +01:00
Lukas Eder
b32cf31f5b [#915] Add <T1, T2, ..., T[N]> Table<Record[N]<T1, T2, ..., T[N]>>
Factory.values(Row[N]<T1, T2, ..., T[N]>...), to create ad-hoc tables
from data
2012-10-31 21:58:00 +01:00
Lukas Eder
5e9e00a973 [#1918] Let generated Records implement Record1, Record2, ...,
Record[N] if applicable
2012-10-31 21:14:23 +01:00
Lukas Eder
3c25759f62 Removed unneeded InOperator (which is redundant with SubqueryOperator) 2012-10-29 21:36:45 +01:00
Lukas Eder
6543cb0f42 [#1583] Add support for row expressions in UPDATE statements: UPDATE ..
SET (A, B, C) = (SELECT X, Y, Z)
2012-10-29 21:23:01 +01:00
Lukas Eder
67a2c5f6ee [#1905] Add Row[N].equal(Select<? extends Record[N]>) and similar
methods
2012-10-28 22:16:07 +01:00
Lukas Eder
345db92b31 [#1875] Add generic <R extends Record> type to SelectXXXStep DSL
type hierarchy for increased tuple type-safety
2012-10-28 14:52:53 +01:00
Lukas Eder
ee0a230c7f [#1902] Duplicate SELECT API between Executor and Factory 2012-10-28 10:51:22 +01:00
Lukas Eder
9df9b9a4af Factory internals visual reorganisation 2012-10-28 10:10:26 +01:00
Lukas Eder
12b913a2d9 [#1374] Review usage of generics. Is <? extends T> really justified? 2012-10-27 23:28:57 +02:00
Lukas Eder
cfec453d50 [#1038] Introduce new type GroupField for cube(), rollup() and
groupingSets() functions. Accept only Field... and GroupField... in
groupBy() clauses
2012-10-27 22:48:55 +02:00
Lukas Eder
9caa7041c2 [#1887] Remove all deprecated code 2012-10-27 22:33:51 +02:00
Lukas Eder
bd7d135140 [#1697] Add Factory.all() and Factory.any() to create quantified
expressions
2012-10-27 22:31:43 +02:00
Lukas Eder
95b8db9cce [#1887] Remove all deprecated code 2012-10-27 21:15:46 +02:00
Lukas Eder
857c8e6f79 [#1887] Remove all deprecated code 2012-10-27 21:00:54 +02:00
Lukas Eder
3ae9425540 Clean up AbstractRecord 2012-10-27 20:45:43 +02:00
Lukas Eder
31d145ea52 [#1887] Remove all deprecated code - Removed getValueAs[...] methods 2012-10-27 20:39:00 +02:00
Lukas Eder
3a94ca1a6c [#1887] Remove all deprecated code - Removed QueryPartInternal API 2012-10-27 20:28:26 +02:00
Lukas Eder
113cb2c215 [#1887] Remove all deprecated code
- Improved AbstractDelegatingQuery type hierarchy
- Removed QueryPartInternal.getSQL() methods
2012-10-27 20:20:07 +02:00
Lukas Eder
2303947503 Inlined method that is no longer really used 2012-10-27 20:09:22 +02:00
Lukas Eder
cd208d3873 [#1895] Decouple Executor from Configuration. Use composition rather
than inheritance - Cleaning of Executor
2012-10-27 20:07:50 +02:00
Lukas Eder
73955ed6ea [#1899] Make some JDBC-related utility methods publicly available
in org.jooq.tools.jdbc.JDBCUtils - Renamed internal Util class to
Utils, to be consistent with other utility classes
2012-10-27 19:44:32 +02:00
Lukas Eder
2b38a75c54 [#1899] Make some JDBC-related utility methods publicly available in
org.jooq.tools.jdbc.JDBCUtils
2012-10-27 19:43:00 +02:00
Lukas Eder
36c98e4cc4 [#1895] Decouple Executor from Configuration. Use composition rather
than inheritance - Removed Executor.DEFAULT_INSTANCES, remainders of
early jOOQ days
2012-10-27 19:32:32 +02:00
Lukas Eder
16be60c44a Added final keywords 2012-10-27 18:56:42 +02:00
Lukas Eder
823732175a Fixed Javadoc 2012-10-27 18:53:01 +02:00
Lukas Eder
99523423c2 Removed unused code 2012-10-26 23:45:05 +02:00
Lukas Eder
e8d7602102 [#1895] Decouple Executor from Configuration. Use composition rather
than inheritance - Step 1: Let executor delegate to Configuration
2012-10-26 23:36:21 +02:00
Lukas Eder
e506d9de65 [#1533] Extract Executor API from Factory. Let Factory contain only
static QueryPart factory methods
2012-10-26 23:03:04 +02:00
Lukas Eder
1444a0b3cb [#1894] Remove constructors from dialect-specific factories 2012-10-26 21:52:04 +02:00
Lukas Eder
ccf94ee887 [#1874] Add Record1, Record2, ... Record8 similar to Row1, Row2, ...
Row8, to support record type-safety
2012-10-26 20:50:01 +02:00
Lukas Eder
fc70742ee1 [#1880] Let SelectQuery extend SimpleSelectQuery to avoid redundancy 2012-10-26 20:48:52 +02:00
Lukas Eder
8a20d38248 [#1887] Remove all deprecated code 2012-10-26 20:24:15 +02:00
Lukas Eder
446104c02d [#1887] Remove all deprecated code 2012-10-26 20:17:56 +02:00
Lukas Eder
156c69e6ba [#1887] Remove all deprecated code 2012-10-26 20:04:00 +02:00
Lukas Eder
e68ed8358a [#1254] Move org.jooq.tools.unsigned contents to org.jooq.types (along
with the new INTERVAL types) - Removed empty package
2012-10-26 19:46:04 +02:00
Lukas Eder
6aea83e50d [#1890] Bad Postgres array serialisation when " or \ characters are
contained in a String[] - Moved extracted postgres array serialisation
method to PostgresUtils
2012-10-26 19:43:19 +02:00
Henrik Johansson
f6479786b1 Fixed issue with encoding and escaping " and \ when inserting into Postgres Array column. 2012-10-26 19:36:01 +02:00
Henrik Johansson
1ab948e62d Made method take Object[] instead of Object, and then cast it. 2012-10-26 19:35:44 +02:00
Henrik Johansson
b01dcd6f0f Inlined call. 2012-10-26 19:35:37 +02:00
Henrik Johansson
c7e22f9038 Made method return String instead of StringBuilder 2012-10-26 19:35:27 +02:00
Henrik Johansson
9afc994ca9 Extracted static method. 2012-10-26 19:35:11 +02:00
Lukas Eder
7397fd839e [#1887] Remove all deprecated code 2012-10-26 18:45:37 +02:00
Lukas Eder
70a5727b64 [#1254] Move org.jooq.tools.unsigned contents to org.jooq.types (along
with the new INTERVAL types)
2012-10-26 18:31:36 +02:00
Lukas Eder
f4e7c57732 [#1887] Remove all deprecated code 2012-10-26 18:25:34 +02:00
Lukas Eder
cbfc408c10 [#1887] Remove all deprecated code 2012-10-26 17:09:13 +02:00
Lukas Eder
65e292f261 [#1740] Remove support for generated master data enums 2012-10-26 17:02:06 +02:00
Lukas Eder
4a1fc9cd8a [#1887] Remove all deprecated code 2012-10-26 15:54:25 +02:00
Lukas Eder
b1bd104fd0 Release 3.0.0-SNAPSHOT 2012-10-26 15:13:19 +02:00
Lukas Eder
b4bcb8e85a Fixed typo 2012-10-26 12:24:02 +02:00
Lukas Eder
c624a8c1d2 [#1881] Deprecate ConditionProvider, OrderProvider, LockProvider types 2012-10-24 23:09:58 +02:00
Lukas Eder
4a3e7f6039 [#1876] NULL constraint violation when storing a copied record 2012-10-22 23:46:23 +02:00
Lukas Eder
f01d118ced [#1868] ExecuteListener.end() is not called when using
ResultQuery.fetchLazy() - Added integration test
2012-10-21 19:20:05 +02:00
Lukas Eder
a44adbfdd1 [#1593] Factory.field("{1} + {0} + {0}", val(1), val(2)) doesn't work.
Cannot re-use / re-order placeholders - Improved SQLite function
simulations
2012-10-21 18:28:07 +02:00
Lukas Eder
1c36ca073b [#1593] Factory.field("{1} + {0} + {0}", val(1), val(2)) doesn't
work. Cannot re-use / re-order placeholders
2012-10-21 18:20:39 +02:00
Lukas Eder
0bcf286986 [#1860] Bad Results returned from plain SQL "select *" queries, if
several selected columns share the same name
[#1720] Improve performance by using Record.getValue(int) instead
of Record.getValue(Field) internally, where more than one value is
retrieved from a record
2012-10-21 17:32:56 +02:00
Lukas Eder
40f82257cd Removed meta attribute 2012-10-21 16:58:59 +02:00
Lukas Eder
15f1c51043 [#1872] Improve jOOQ's RenderContext pretty printing behaviour 2012-10-21 15:13:00 +02:00
Lukas Eder
aa471b6285 [#1869] Deprecate org.jooq.NamedQueryPart 2012-10-19 19:48:58 +02:00
Lukas Eder
ae6b547870 Fixed some warnings 2012-10-19 19:21:00 +02:00
Lukas Eder
c337ed6144 Fixed formatting 2012-10-19 19:18:56 +02:00
Lukas Eder
afea623b09 [#1870] Deprecate org.jooq.NamedTypeProviderQueryPart 2012-10-19 19:14:45 +02:00
Lukas Eder
1fecedc621 [#1527] Support for converting String to java.net.URL, java.net.URI, and
java.io.File
2012-10-19 18:45:48 +02:00
Lukas Eder
3eb55f8295 [#1839] Deprecate the various Result.getValuesAs[Type] and
Record.getValueAs[Type] methods
2012-10-19 17:57:51 +02:00
Lukas Eder
8cff3669fa [#1840] Deprecate org.jooq.Store 2012-10-19 17:24:26 +02:00
Lukas Eder
dfb0ae8717 [#1855] Add Query.cancel() to support for interrupting statements
prematurely
2012-10-19 16:38:55 +02:00
Lukas Eder
675adc205f [#385] Allow for keeping open statements in a Query 2012-10-19 15:31:30 +02:00
Lukas Eder
eb0cfe4a68 [#1857] NPE in org.jooq.impl.TableImpl and org.jooq.SchemaMapping caused
by not threadsafe code in SchemaMapping.
2012-10-12 14:56:29 +02:00
Lukas Eder
86a5fca6ee Merge pull request #1858 from dankosedin/master
Fix for ticket 1857
2012-10-12 05:30:13 -07:00
Lukas Eder
2ee9b459bb [#1472] Move org.jooq.tools.debug API from jOOQ Console to core - After
experimenting with such APIs, Christopher Deckers and I came to the
conclusion that the debugger API is too specialised to be put into the
core. This ticket will be reverted
2012-10-12 14:09:27 +02:00
Lukas Eder
cdccbceb61 [#1710] Add <E> Map<Record, List<E>> ResultQuery.fetchGroups(Field<?>[],
Class<E>) - Aligned API with other fetchGroups() methods
2012-10-12 14:03:15 +02:00
Ivan Dugic
85488a5cee [1710] Add <E> Map<List<?>, List<E>> ResultQuery.fetchGroups(Field<?>[],
Class<E>)
2012-10-08 19:51:23 +02:00
Lukas Eder
0526ac1bc6 [#1854] Add ResultQuery.maxRows(int) to limit the number of actually
fetched records
[#1856] Add Query.queryTimeout(int) to support for JDBC's
Statement.setQueryTimeout()
2012-10-07 12:36:53 +02:00
Denis Bondarenko
661eff4df5 Fixed possible NPE on deserialization 2012-10-03 11:54:47 +03:00
Denis Bondarenko
b862fd8d44 fix for ticket 1857 2012-10-02 13:24:59 +03:00
Lukas Eder
69187ee0ed [#1756] Add RecordMapper<E>, similar to RecordHandler<R>, mapping
records to custom types
2012-09-28 18:36:13 +02:00
Lukas Eder
8712b86f78 [#1850] Record.equals() returns true as soon as both records hold a
"null" value for a given field
2012-09-28 17:50:29 +02:00
Lukas Eder
d82d95ef78 [#1848] Add Record.changed() to indicate whether a Record contains
"dirty" values
2012-09-28 17:41:09 +02:00
Lukas Eder
9f2a848b07 [#1849] Add Record.original() to obtain the originally fetched values
from a Record
2012-09-28 17:16:40 +02:00
Lukas Eder
e976d79243 [#1472] Move org.jooq.tools.debug API from jOOQ Console to core
- Added Debugger.executor(), to re-enable jOOQ Console Editor
functionality
 - Renamed DebuggerFactory to DebuggerAPI (may be improved)
 - Reverted Settings flags to activate the Debugger Server
 - Added explicit API in DebuggerAPI to start / stop the Debugger Server
 - Added DebuggerAPI.debug property for global activation / deactivation
of debugging
2012-09-28 15:57:36 +02:00
Lukas Eder
a15c83fc25 [#1844] Add Table<Record> Table.join(TableLike<?>, JoinType) to allow
for dynamic joining
2012-09-26 22:38:44 +02:00
Lukas Eder
20d9d02cdc [#1472] Move org.jooq.tools.debug API from jOOQ Console to core - Added
QueryExecutor.schemata(), .tables(Schema), .fields(Table) in order to
query for meta data
2012-09-24 23:33:49 +02:00
Lukas Eder
94225e8d5f [#1842] Add Condition Field.compare(Comparator, Field<T>) to allow for
dynamic comparisons
2012-09-24 22:06:08 +02:00
Lukas Eder
8f53755f94 [#1841] Add SortField Field.sort(SortOrder) to allow for dynamic sorting 2012-09-24 21:51:07 +02:00
Lukas Eder
f9f351762c [#1709] Add Map<Record, Result<R>> ResultQuery.fetchGroups(Field<?>[])
- Changed result Map key from List<?> to Record
 - Fixed some debugger-related issues
2012-09-23 12:24:07 +02:00
Lukas Eder
0bf633fc26 [#1472] Move org.jooq.tools.debug API from jOOQ Console to core - Minor
improvements
2012-09-22 16:26:15 +02:00
Lukas Eder
b1ff568f41 [#1837] Add support for @java.beans.ConstructorProperties when
fetching into immutable POJOs
2012-09-22 13:44:48 +02:00
Lukas Eder
55e4aaed8d Changed generic type parameter <T> into <E> where reflection is involved 2012-09-22 12:33:11 +02:00
Lukas Eder
05bbb371c7 Wrap execute() call in try {} finally {} 2012-09-22 11:50:55 +02:00
Lukas Eder
dda85af4b4 [#1472] Move org.jooq.tools.debug API from jOOQ Console to core -
Restored match count feature
2012-09-19 16:37:28 +02:00
Lukas Eder
142594e67d [#1472] Move org.jooq.tools.debug API from jOOQ Console to core -
Added instead processor
2012-09-19 16:02:43 +02:00
Lukas Eder
eaf50d8b57 [#1829] Factory.execute(String) may cause errors when plain SQL
returns results
2012-09-19 16:02:06 +02:00
Lukas Eder
30121c3da2 Merge branch 'master' of https://github.com/jOOQ/jOOQ.git 2012-09-18 22:46:48 +02:00
Ivan Dugic
45e6356e4e [#1810 Add <T, E> Map<T, E> ResultQuery.fetchMap(Field<T>, Class<E>) and
Result.intoMap(Field<T>, Class<E>)]
2012-09-18 22:28:03 +02:00
Lukas Eder
3f048d2692 [#1472] Move org.jooq.tools.debug API from jOOQ Console to core - added
column count to ResultLog along with row count. Both are performance
relevant.
2012-09-16 23:43:05 +02:00
Lukas Eder
337b158648 [#1472] Move org.jooq.tools.debug API from jOOQ Console to core - Added
QueryOrigin property to QueryLog
2012-09-16 23:37:41 +02:00
Lukas Eder
6cd084e77f [#1830] Allow for passing null or empty arrays to intoMap(Field[]) and
intoGroups(Field[])
2012-09-16 22:46:42 +02:00
Lukas Eder
907b0d45cf Removed unnecessary throws clauses 2012-09-16 22:41:24 +02:00
Lukas Eder
c6a238e9b9 [#1472] Move org.jooq.tools.debug API from jOOQ Console to core 2012-09-16 22:39:08 +02:00
Lukas Eder
d9bf1c5703 [#1472] Move org.jooq.tools.debug API from jOOQ Console to core 2012-09-16 18:10:06 +02:00
Lukas Eder
362bae68e0 [#1828] Reduce log level for Factory deserialisation to TRACE 2012-09-14 11:50:14 +02:00
Lukas Eder
5b40017df6 [#1819] MappingException in Record.into(Class), when POJO setters
have applicable names but non-applicable argument types
2012-09-14 10:33:46 +02:00
Lukas Eder
83f5bf8388 [#1820] Cannot fetch into non-public POJO classes. Their members /
getters / setters should be made accessible
2012-09-14 09:27:39 +02:00
Lukas Eder
1ae5227d9d [#1472] Add a Settings.executeDebugging property, and move server-side
Console logic to core - Added runtime setting
2012-09-13 18:44:45 +02:00
Lukas Eder
dcdceadfb1 Merge pull request #1815 from idugic/master
#1709 update
2012-09-11 12:58:22 -07:00
Ivan Dugic
cd05526a97 [#1709] Add Map<List<?>, Result<R>> ResultQuery.fetchGroups(Field<?>...)
Update
2012-09-11 21:49:28 +02:00
Lukas Eder
a31e00dad1 Fixed warning 2012-09-11 20:49:59 +02:00
Ivan Dugic
e127a11432 [#1709] Add Map<List<?>, Result<R>> ResultQuery.fetchGroups(Field<?>...) 2012-09-10 22:25:49 +02:00
Lukas Eder
921056dba0 [#1708] Add <T, E> Map<T, List<E>> ResultQuery.fetchGroupsInto(Field<T>,
Class<E>) 

 - Renamed "fetchIntoGroups" to "fetchGroups"
 - Replaced usage of LinkedList by ArrayList
2012-09-09 09:54:58 +02:00
Ivan Dugic
d8aac367f5 [#1708] Add <T, E> Map<T, List<E>> ResultQuery.fetchGroupsInto(Field<T>,
Class<E>)
2012-09-07 21:54:01 +02:00
Lukas Eder
eeaa60bee8 [#600] Add support for Oracle / SQL Standard linear regression functions 2012-09-07 16:30:45 +02:00
Lukas Eder
7f3e0fb63d [#1808] Optimise various ResultQuery.fetch(int),
ResultQuery.fetch(String) methods. They don't need to fetch all fields,
only the required ones - Added a comment
2012-09-07 12:38:08 +02:00
Lukas Eder
25996db3f7 [#1719] Make logic from ResultQuery.fetchArray() available in
Result.intoArray()
2012-09-07 12:09:09 +02:00
Lukas Eder
1b7ee88984 [#1807] Result.intoArray() declares "throws MappingException", which
isn't true
2012-09-07 11:35:11 +02:00
Lukas Eder
85cb1067f8 [#1802] Result.into(Table) doesn't work correctly, if the same field
name appears twice in Result - Improve Record.into(Table) Javadoc
2012-09-07 11:02:19 +02:00
Lukas Eder
54e33892c0 [#1802] Result.into(Table) doesn't work correctly, if the same field
name appears twice in Result
2012-09-07 10:52:47 +02:00
Lukas Eder
edd616a3a7 [#1806] Let Record.toString() wrap the record in a temporary Result and
call Result.toString() instead
2012-09-07 09:33:25 +02:00
Lukas Eder
1c9511e329 Added some Javadoc to AbstractDelegatingSelect 2012-09-06 22:55:52 +02:00
Lukas Eder
d20fe113a0 [#1800] Deprecate AliasProvider 2012-09-05 20:43:57 +02:00
Lukas Eder
a32cc252ef [#1797] SQL syntax errors when plain SQL contains comments with question
marks and SQL is executed as StatementType.STATIC_STATEMENT
2012-09-05 20:35:55 +02:00
Lukas Eder
0b0a260620 [#1792] Factory.fieldByName() and tableByName() do not correctly escape
quotes
2012-09-05 19:04:31 +02:00
Lukas Eder
e7dbb66881 [#1674] Export data types with Result.formatXML() and
Result.formatJSON() exports - Documented changes in manual and Javadoc
2012-09-05 18:16:20 +02:00
Lukas Eder
c02ab72d7b [#1674] Export data types with Result.formatXML() and
Result.formatJSON() exports - Fixed formatXML() namespace
2012-09-04 23:46:12 +02:00
Lukas Eder
310c62fbaf Merge branch 'master' of https://github.com/idugic/jOOQ into idugic-master 2012-09-04 23:32:57 +02:00
Ivan Dugic
9242a5c510 [#1674] Export data types with Result.formatXML() and
Result.formatJSON() exports
2012-09-04 21:25:03 +02:00
Lukas Eder
3eb857e196 [#1058] Add <T1, T2, .. TN> Factory.row(T1, T2, .. TN) and
Factory.row(Field<T1>, Field<T2> ... Field<TN>) to allow for creating
tuples / rows - Renamed "TUPLE" into "ROW" to follow the SQL standard
2012-09-04 20:39:15 +02:00
Lukas Eder
79f36b69df [#1679] Add Factory.table(String, QueryPart...) 2012-09-02 17:41:28 +02:00
Lukas Eder
5f65aa4e8c Add Tuple.getFields() 2012-09-02 16:23:12 +02:00
Lukas Eder
15f0b8b813 [#1764] Add missing @Support({ ... FIREBIRD ... }) annotations 2012-09-02 15:30:58 +02:00
Lukas Eder
d9c8a91a83 [#1786] Fix SEQUENCE support for Firebird 2012-09-02 14:46:33 +02:00
Lukas Eder
b42fc21322 [#1484] Let XJC-generated artefacts implement Cloneable 2012-09-02 12:13:06 +02:00
Lukas Eder
a6b69a6edf [#1245] - Improve formatting for DECIMAL data types in Result.format() -
Improved test case, removed trimming of trailing zeroes
2012-09-02 09:40:23 +02:00
Lukas Eder
d1c81e84b5 Merge pull request #1785 from idugic/master
#1245
2012-09-01 12:16:43 -07:00
Ivan Dugic
57ea195109 [#1245] Improve formatting for DECIMAL data types in Result.format().
Nicely align the decimal point and reserve space on both sides

Who would say some jUnit test will fail? Cool.
2012-09-01 19:55:08 +02:00
Ivan Dugic
d1142d2a62 [#1245] - Improve formatting for DECIMAL data types in Result.format().
Nicely align the decimal point and reserve space on both sides
2012-09-01 18:51:12 +02:00
Lukas Eder
172d2e80fa [#1728] Add support for the MySQL COUNT(DISTINCT expr, expr...)
aggregate function syntax
2012-09-01 17:58:18 +02:00
Lukas Eder
86121ae906 [#1058] Add <T1, T2, .. TN> Factory.tuple(T1, T2, .. TN) and
Factory.tuple(Field<T1>, Field<T2> ... Field<TN>) to allow for creating
tuples - Pull up in(Select<?>) and notIn(Select<?>) methods
2012-09-01 17:37:32 +02:00
Lukas Eder
7b698497ec [#1784] Enhance the BETWEEN predicate, introducing the AND keyword 2012-09-01 17:02:21 +02:00
Lukas Eder
eb9264e00d Fixed some warnings 2012-09-01 12:14:22 +02:00
Lukas Eder
7ba5bb1beb [#1782] Move JAXB bindings out of XSD, in order to support more advanced
bindings
2012-09-01 11:43:45 +02:00
Lukas Eder
4f5593d8b4 [#1774] QueryPart.toString() does not load default settings from
classpath
2012-09-01 10:39:30 +02:00
Lukas Eder
2a235ff569 Store SchemaMapping to local variable 2012-09-01 10:20:33 +02:00
Lukas Eder
27ac37a751 [#1077] Add support for the SQL standard OVERLAPS predicate 2012-08-30 22:51:20 +02:00
Lukas Eder
86d3792960 [#1583] Add support for tuple expressions in UPDATE statements: UPDATE
.. SET (A, B, C) = (SELECT X, Y, Z) - Added Tuple marker interface
2012-08-30 20:43:48 +02:00
Lukas Eder
334cd69b19 [#1762] Add package-info.java to add Javadoc documentation to all
packages
2012-08-30 20:34:21 +02:00
Lukas Eder
81d68ad165 [#1766] Simulate tuple comparisons where they are not supported 2012-08-30 19:50:42 +02:00
Lukas Eder
490478cd38 [#1768] NullPointerException when DAO.fetchOne() returns no record 2012-08-30 18:39:19 +02:00
Lukas Eder
69a23ecb0d [#1058] Add <T1, T2, .. TN> Factory.tuple(T1, T2, .. TN) and
Factory.tuple(Field<T1>, Field<T2> ... Field<TN>) to allow for creating
tuples
2012-08-29 22:26:19 +02:00
Lukas Eder
546672ca94 [#1763] Remove useless internal NamedQueryPartList 2012-08-29 19:02:08 +02:00
Lukas Eder
ebef56c7d8 [#1744] Add support for the CUBRID DECR() function 2012-08-28 20:00:34 +02:00
Lukas Eder
bea0a4917b [#1751] Result.intoResultSet() generates wrong ResultSetMetaData
if runtime schema mapping is applied
2012-08-28 19:58:46 +02:00
Lukas Eder
7d569a9e54 Release 2.6.0-SNAPSHOT 2012-08-28 19:45:25 +02:00
Lukas Eder
c8d3b0789b Fixed BETWEEN SYMMETRIC for Sybase ASE 2012-08-26 09:45:28 +02:00
Lukas Eder
b38d698ae9 [#1741] Deprecate org.jooq.MasterDataType 2012-08-25 17:37:13 +02:00
Lukas Eder
8b605c86b5 [#1736] Deprecate TableRecord.{store|refresh|delete}Using() methods as
being part of jOOQ's internal API
2012-08-25 15:05:46 +02:00
Lukas Eder
d22941a1f6 Fixed warnings 2012-08-25 15:03:07 +02:00
Lukas Eder
8659323f1b Made IsDistinctFrom package-private! 2012-08-25 12:16:30 +02:00
Lukas Eder
f2ff0c77e2 [#430] Add support for the Firebird database - Changed connection URL to
fix binding of null values
2012-08-25 11:35:44 +02:00
Lukas Eder
85d9f8ffc5 [#430] Add support for the Firebird database - Fixed handling of
BigDecimal data types
2012-08-24 11:43:24 +02:00
Lukas Eder
88de2f62da [#430] Add support for the Firebird database - Fixed binding of NULL
values to PreparedStatements
2012-08-24 11:17:54 +02:00
Lukas Eder
3c8be0ed30 [#430] Add support for the Firebird database - Fixed data types 2012-08-24 08:43:24 +02:00
Lukas Eder
7abc0907f0 Firebird will not be experimental, but "beta" 2012-08-24 01:13:51 +02:00
Lukas Eder
a243b86fc2 [#430] Add support for the Firebird database - initial code generation
contribution
2012-08-24 01:10:27 +02:00
Lukas Eder
cfd5ad417e [#430] Add support for the Firebird database - Added initial code
generation contribution
2012-08-24 01:05:42 +02:00
Lukas Eder
e346394ac7 [#1730] Compilation errors in SQLite generated code when flag
<instanceFields/> is set to true
2012-08-23 20:01:19 +02:00
Lukas Eder
c8d2b997dc [#1727] Cast VARCHAR bind values to their actual string length in
Firebird
2012-08-23 19:27:24 +02:00
Lukas Eder
b708cc15e4 [#1727] Cast VARCHAR bind values to their actual string length 2012-08-22 18:59:22 +02:00
Lukas Eder
a8a1b0190b Fixed "IS DISTINCT FROM" for Sybase SQL Anywhere 2012-08-22 18:56:44 +02:00
Lukas Eder
9e96de36ce Fixed "SYMMETRIC" for Sybase SQL Anywhere 2012-08-22 18:55:51 +02:00
Lukas Eder
c814d30853 [#430] Add support for the Firebird database - Fixed BOOLEAN literals 2012-08-19 18:59:43 +02:00
Lukas Eder
50f99b3bd8 [#430] Add support for the Firebird database - Fixed LIKE_REGEX() test
case
2012-08-19 18:47:03 +02:00
Lukas Eder
2afd325029 [#430] Add support for the Firebird database - Fixed ASCII() 2012-08-19 18:25:58 +02:00
Lukas Eder
a59f83b6d3 [#430] Add support for the Firebird database - Fixed REPEAT() 2012-08-19 18:24:31 +02:00
Lukas Eder
5f0d165869 [#430] Add support for the Firebird database - Fixed RPAD() and LPAD() 2012-08-19 18:23:42 +02:00
Lukas Eder
bb3df952f2 [#430] Add support for the Firebird database - Fixed REPLACE() 2012-08-19 18:23:28 +02:00
Lukas Eder
102e1f6bf9 [#430] Add support for the Firebird database - Improved GREATEST() and
LEAST() implementations
2012-08-19 18:21:17 +02:00
Lukas Eder
426ec1fed9 [#430] Add support for the Firebird database - Fixed DATE TIME
arithmetic
2012-08-19 18:05:36 +02:00
Lukas Eder
dfb0bfda4c [#430] Add support for the Firebird database - Fixed INSERT .. RETURNING 2012-08-19 17:39:40 +02:00
Lukas Eder
04ab71c821 [#430] Add support for the Firebird database - Implement LIMIT using
ROWS .. TO, instead of FIRST .. SKIP
2012-08-19 14:47:03 +02:00
Lukas Eder
97be121d08 [#430] Add support for the Firebird database - Fixed multi-record INSERT 2012-08-19 14:34:24 +02:00
Lukas Eder
e5e453464b [#430] Add support for the Firebird database - Fixed UNION and UNION ALL 2012-08-19 14:22:08 +02:00
Lukas Eder
3b2c7a7a45 [#430] Add support for the Firebird database - Fixed BETWEEN SYMMETRIC 2012-08-19 14:12:26 +02:00
Lukas Eder
b32a18e6a0 [#430] Add support for the Firebird database - Fixed GREATEST(), LEAST() 2012-08-19 14:05:34 +02:00
Lukas Eder
d2d7c5e79f [#430] Add support for the Firebird database - Fixed EULER number,
DEGREES() and RADIANS() functions
2012-08-19 14:03:12 +02:00
Lukas Eder
069261057a [#430] Add support for the Firebird database - Fixed LTRIM() and RTRIM() 2012-08-19 13:51:03 +02:00
Lukas Eder
b490fb7df7 [#430] Add support for the Firebird database - Fixed empty GROUP BY()
clauses
2012-08-19 13:33:44 +02:00
Lukas Eder
c457958bb4 [#430] Add support for the Firebird database - Fixed more data types 2012-08-19 13:30:13 +02:00
Lukas Eder
ec6be8c5b2 [#430] Add support for the Firebird database - Fixed large IN predicates 2012-08-19 13:23:21 +02:00
Lukas Eder
9c16349663 [#430] Add support for the Firebird database - Fixed SUBSTRING() 2012-08-19 13:21:30 +02:00
Lukas Eder
4ff3c98bcc [#430] Add support for the Firebird database - Fixed LIMIT 2012-08-19 12:59:24 +02:00
Lukas Eder
16576dbe27 [#430] Add support for the Firebird database - Fixed bind value casting 2012-08-19 12:45:08 +02:00
Lukas Eder
a40f111195 [#1723] Add Factory.fetchLazy(ResultSet) 2012-08-19 12:28:47 +02:00
Lukas Eder
825d89d876 Added Javadoc remark about Iterable vs. Iterator 2012-08-18 19:07:08 +02:00
Lukas Eder
dcc3d0c33e [#430] Add support for the Firebird database - Fixed support annotation 2012-08-18 17:34:55 +02:00
Lukas Eder
3ba7ef5a9c [#1722] ResultQuery.fetchArray(int) and .fetchArray(String) should
return a typed array, even if this cannot be checked by the compiler
2012-08-18 17:34:11 +02:00
Lukas Eder
0ace81628e [#430] Add support for the Firebird database - Fixed bitwise operations 2012-08-17 19:20:52 +02:00
Lukas Eder
1fa3a6e951 [#430] Add support for the Firebird database - Fixed CURRENT_DATE,
CURRENT_TIME, CURRENT_TIMESTAMP
2012-08-17 19:01:01 +02:00
Lukas Eder
2956e11d6c [#430] Add support for the Firebird database - fixed TRUNCATE statement 2012-08-17 18:50:15 +02:00
Lukas Eder
ad41d00e92 [#430] Add support for the Firebird database - Fixed CURRENT_USER() 2012-08-17 18:48:01 +02:00
Lukas Eder
5ecc70035a [#430] Add support for the Firebird database - Fixed DUAL table 2012-08-17 18:46:52 +02:00
Lukas Eder
83981bf9dd [#430] Add support for the Firebird database - Partially fixed data
types
2012-08-17 18:43:25 +02:00
Lukas Eder
9d0c022f33 [#430] Add support for the Firebird database 2012-08-17 18:32:12 +02:00
Lukas Eder
53e234af71 [#1692] Replace Factory.executeInsert(), Factory.executeUpdate() and
similar methods with more succinct variants - Added missing parts for
executeDelete()
2012-08-17 14:51:30 +02:00
Lukas Eder
511757685e [#1721] Add <K, V> Map<K, List<V>> ResultQuery.fetchGroups(Field<K>,
Field<V>) and Result.intoGroups(Field<K>, Field<V>)
2012-08-17 12:04:38 +02:00
Lukas Eder
8c07e10014 [#1707] Add <K> Map<K, Result<R>> ResultQuery.fetchGroups(Field<K>) and
Result.intoGroups(Field<K>)
2012-08-17 11:50:32 +02:00
Lukas Eder
1bf31a484d [#1716] Make all logic from ResultQuery.fetchXXX() available in
Result.XXX() - Added fetchMap() methods
2012-08-17 11:21:50 +02:00
Lukas Eder
818edad796 [#1718] Document usage of InvalidResultException on the
ResultQuery.fetchXXX() Javadocs
2012-08-17 10:53:47 +02:00
Lukas Eder
ed947217d7 [#1714] Add Result.sortAsc, .sortDesc(Comparator<? super R>) 2012-08-15 19:22:33 +02:00
Lukas Eder
d5bf83cfe8 [#1712] Add <T extends Comparable<? super T>> Result.sortAsc,
.sortDesc(Field<T>)
[#1713] Add <T> Result.sortAsc, .sortDesc(Field<T>, Comparator<? super
T>)
2012-08-15 19:14:44 +02:00
Lukas Eder
b6e9e06f20 [#1704] Document the behaviour of Factory.newRecord(Table<?>, Object),
and Record.from(Object) with respect to UpdatableRecord.store()
2012-08-12 11:37:00 +02:00
Lukas Eder
d14483b03e [#1701] Add Condition Factory.not(Condition) as a synonym for
Condition.not()
2012-08-11 14:46:32 +02:00
Lukas Eder
3c9ae4da6e [#1698] Add support for the SQL standard BETWEEN SYMMETRIC predicate 2012-08-11 13:33:27 +02:00
Lukas Eder
b91c2e2399 Improved Javadoc on DISTINCT predicate 2012-08-11 12:45:01 +02:00
Lukas Eder
3097d00cf0 [#1696] Add short versions of comparison predicate methods, such as eq,
ne, gt, ge, lt, le
2012-08-11 12:15:36 +02:00
Lukas Eder
5584093ea5 Reorganised Field API according to predicate manual sections 2012-08-11 12:05:30 +02:00
Lukas Eder
9bd17b5c86 Moved rand() function from "other" to the "mathematical functions"
section
2012-08-10 21:03:14 +02:00
Lukas Eder
6f37bafae7 Fixed javac issues related to generics 2012-08-10 16:24:25 +02:00
Lukas Eder
b48db4a690 [#1693] Cannot bind UDT values from other schemata to stored procedures 2012-08-10 16:16:58 +02:00
Lukas Eder
956de59769 Added remark to Factory Javadocs, concerning static imports 2012-08-10 14:09:55 +02:00
Lukas Eder
fb7f143edc [#1684] Add <attachRecords/> Setting to indicate that fetched records
shouldn't be automatically "attached"
2012-08-10 13:46:33 +02:00
Lukas Eder
ed397248dd [#1692] Replace Factory.executeInsert(), Factory.executeUpdate() and
similar methods with more succinct variants
2012-08-10 13:15:20 +02:00
Lukas Eder
a9b61b1a2f [#1688] Add <E> E Record.into(E) as a complement to <E> E
Record.into(Class<E>)
2012-08-10 12:37:01 +02:00
Lukas Eder
4d648a63cd [#1687] Let Cursor.fetchInto(Table<Z>) return Result<Z> instead of
List<Z>
2012-08-09 18:47:36 +02:00
Lukas Eder
d8b640e5d5 [#1684] Add Setting to indicate that fetched records shouldn't be
automatically "attached" - Added Javadoc
2012-08-09 18:45:58 +02:00
Lukas Eder
6234f86b3d [#1685] Improve Javadoc of Attachable.attach(). Document how "detaching"
works
2012-08-09 17:57:54 +02:00
Lukas Eder
38286cb5df [#1681] Simulate empty GROUP BY () clause in Sybase ASE and Ingres,
joining a dummy table and grouping by a constant field
2012-08-05 23:29:43 +02:00
Lukas Eder
e5bbfbe4bf [#1665] Add support for the empty GROUP BY () clause 2012-08-05 23:23:49 +02:00
Lukas Eder
c0be23d7c5 [#1665] Add support for the empty GROUP BY () clause 2012-08-05 23:00:06 +02:00
Lukas Eder
5ccad19d67 Added some additional Javadoc links 2012-08-05 15:52:43 +02:00
Lukas Eder
5defcedf59 [#1680] Overload all plain SQL DSL methods to also accept QueryPart
arguments
2012-08-05 15:51:07 +02:00
Lukas Eder
f4a3e2a4c8 [#457] Add support for Oracle user-defined AGGREGATE functions 2012-08-05 11:14:21 +02:00