Releases: JSQLParser/JSqlParser
Releases · JSQLParser/JSqlParser
JSqlParser 1.1
- support for UPSERT syntax
- absolute token positions in addition to column/line
- common normal form transformer for expressions (https://en.wikipedia.org/wiki/Conjunctive_normal_form)
- checkstyle integration to force first souce code conventions
- checkstyle is activated by default, it can be deactivated by an environment property skipCheckSources
- pull requests should follow this style settings
Extensions in version 1.0
- support FOR UPDATE WAIT
- support for simple expressions within case when
- rewrite of SelectBody - production, reduce of needed lookaheads results in huge parser performance improvements at least in some cases
- please test it due to possible changes in the parse tree
- released as version 1.0
jsqlparser-0.9.7
Extensions in version 0.9.7
- support getting jdbc parameter index
- Removed limitation of LongValue to accept only java.util.Long parsable values.
- introduced NOT without parenthesis for column only conditions
- introduced more complex expressions within CASE - statements
- improved Postgresql JSON - support
- integrated some Postgresql create table contraints
- support for alter table modify statements
- allowed more types of expressions after limit and top.
jsqlparser-0.9.6
Extensions in version 0.9.6
- support for delete with join table
- support for Alter with multiple ADD/DROP expressions
- support for ON DELETE SET NULL for create table
- added AST node support for subselect, withitem, function, case when
- first support for TABLESPACE within CREATE TABLE
- support for SELECT UNIQUE
- first support for date literals like TIMESTAMP'2004-04-30 04:05:34.56'
- support for UPDATE RETURNING
- support for scalar time function, like CURRENT_TIMESTAMP
- support for LEFT SEMI JOIN
- improved top expression
SELECT TOP (? + 1) * FROM MyTable
- allowed negative interval expressions like INTERVAL -420 MINUTES.
- support for ALTER VIEW statements
- improved merge statement
- support for non standard syntax > =, < = and < > (with whitespaces between)
jsqlparser-0.9.5
Extensions in version 0.9.5
- introduced first support for boolean valued column conditions
SELECT * FROM mytable WHERE mytable.boolValue;
- improved parenthesis parsing performance within expressions (#215)
- support for ALTER TABLE mytable ADD CONSTRAING name PRIMARY KEY (col)
- support for INSERT LOW_PRIORITY INTO
- support for ORDER BY and LIMIT in UPDATE and DELETE statements
UPDATE tablename SET ... ORDER BY col;
UPDATE tablename SET ... ORDER BY col LIMIT 10;
UPDATE table1 A SET ... LIMIT 10;
DELETE FROM tablename LIMIT 5;
DELETE FROM tablename ORDER BY col;
DELETE FROM tablename ORDER BY col LIMIT 10;
- support for INSERT ... ON DUPLICATE KEY UPDATE
- improved support for ALTER TABLE statements
- first Oracle hint support for SELECT statements
- first ALTER TABLE FOREIGN KEY support
- first MERGE support
- first version of escaped single quotes support
select '\''
jsqlparser-0.9.4
Extensions JSqlParser 0.9.4
- improved interval expression syntax
- support of hex values (0xabc54, x'abc567') added
- support of (e.g. @@spid) system parameters
- support of signed parameters added
SELECT * FROM mytable WHERE -? < 4
- support for SELECT SKIP FIRST ...
- Completely rewritten S_IDENTIFIER rule to accept hopefully all possible UTF-8 letters without
specifying some additional rules. - allow Server within multipart names to act as database link
- revived Apache Software License, Version 2.0
- support for row constructors in conditions
SELECT * FROM t1 WHERE ROW(col1, col2) = (SELECT col3, col4 FROM t2 WHERE id = 10)
- some refactorings for TablesNamesFinder to improve usability
- established JJTree nodes for columns and tables (look at SelectASTTest) for first usages
- support for MySQL GROUP_CONCAT
GROUP_CONCAT(DISTINCT test_score ORDER BY test_score DESC SEPARATOR ' ')
jsqlparser-0.9.3
Extensions JSqlParser 0.9.3
- improved interval expression support
- support for KEEP
KEEP (DENSE_RANK FIRST ORDER BY col1)
- support for ILIKE
- support for LEFT/RIGHT as function names
- support for UPDATE OF table
- API changes due to grammar refactoring
- First support for Postgresql arrays. Some quoted identifier rules for SQLServer
had to be changed. - support for with recursive
WITH RECURSIVE data as (SELECT ...) ...
- support for oracles old join syntax improved
.. WHERE a( + ) = b
- first support for numeric bind
SELECT a FROM b WHERE c = :1
- support for keywords as column names in create table statements
jsqlparser-0.9.2
Extensions Release 0.9.2
- first support for user variables
SELECT @col FROM table1
- support for within group expressions, e.g. oracls LISTAGG function
SELECT LISTAGG(col1, '##') WITHIN GROUP (ORDER BY col1) FROM table1
- support for inner with statements
SELECT * FROM (WITH actor AS (SELECT 'a' aid FROM DUAL) SELECT aid FROM actor)
- support for Oracle collections
SELECT * FROM mytable WHERE COL1 = lines(idx).field1
- support for PostgreSQL ANY - array syntax
- introduced additional parameters for create table statements (deparser extended)
- first support for FOR UPDATE
SELECT * FROM user_table FOR UPDATE
UPDATE mytable SET (col) = (SELECT a FROM mytable2)
- partially support SQL Server 2012 and Oracle 12c OFFSET ... FETCH ...
jsqlparser-0.9.1
Extensions Release 0.9.1
- Simple support for EXECUTE.
EXECUTE myproc 'a', 2, 'b'
- Improved support for select into clause.
SELECT * INTO mytable FROM mytable2
- Improved support for insert table using with clause.
INSERT INTO mytable (mycolumn) WITH a AS (SELECT mycolumn FROM mytable) SELECT mycolumn FROM a
- Support for
limit 0
andlimit null
clause. - Window functions now allow simple expressions for partition by.
- Support for create table as select syntax:
CREATE TABLE table1 as SELECT col1, col2 FROM table2
- First simple support of postgresqls JSON syntax.
SELECT data->'images'->'thumbnail'->'url' AS thumb FROM instagram
- Included support for returning for insert statements.
INSERT INTO mytable (mycolumn) VALUES ('1') RETURNING id
- Included support for multitable update statements.
UPDATE table1, table2 SET table1.col2 = table2.col2, table2.col3 = 'UPDATED' WHERE table1.col1 = table2.col1
jsqlparser-0.9
Extensions Version 0.9
- Included support for some keyword object names.
SELECT cast, do FROM tableName
- Included support for named primary keys in create table statements.
- Include adapter classes for visitor interfaces to simplify visitor usage.
- included a huge amount of oracle test sqls. There is much room for improvement supporting all oracle syntax specials.
- pivot support for subqueries implemented
SELECT * FROM (SELECT times_purchased, state_code FROM customers t) PIVOT (count(state_code) FOR state_code IN ('NY', 'CT')) ORDER BY times_purchased
- "!=" support corrected to not give "<>" while deparsing
- Improved COUNT(ALL expr) support
- lax test utils implemented
- toString() for window elements corrected
- Character Set support included.
CAST(col2 AS CHAR(255) CHARACTER SET utf8)