Skip to content

Releases: JSQLParser/JSqlParser

jsqlparser-4.3

12 Dec 15:36
Compare
Choose a tag to compare
  • moved to JUnit 5 as a test framework
  • added IGNORE NULLS to window functions
  • Postgres compliant ALTER TABLE schema.oldTableName RENAME TO newTableName
  • added use of * or mytable.* as a function parameter
  • enhanced support for ddl drop of indexes
  • support alias for Unpivot statement
  • support for limit and offset expressions
  • support for special JSON_OBJECT function parsing
  • allow ComplexExpressions for CASE expression (preview)
  • support MYSQL modifiers for DELETE / UPDATE
  • support for Postgres Dollar quotation: $$mystring$$
  • support for expression in escaping of a like expression: LIKE ? ESCAPE ?
  • support for CREATE OR REPLACE TABLE
  • support for multi column unpivot
  • support for RESTART in Postgres ALTER SEQUENCE
  • improved support of IGNORE NULLS in window functions
  • upgraded some maven plugin versions

JSqlParser 4.2

08 Sep 09:52
Compare
Choose a tag to compare
  • API change: Support SELECT ... without a FROM clause, making SELECT 1, 2 and SELECT * parsable statements (before those failed)
  • API change: Support complex UPDATE sets (using multiple SubQuery or ValueList or Single Values, in combination)
  • Support nested CASE expressions with complex expression arguments
  • API change: Support JOIN with multiple trailing ON Expressions (JOIN ... JOIN ... ON ... ON ...)
  • Support Oracle Hierarchical CONNECT_BY_ROOT Operator
  • Support Transact-SQL IF ... ELSE ... Statement Control Flows.
  • Allow optional parameters for the ALTER TABLE ... statement (e.g. ALTER TABLE ... MOVE TABLESPACE ...)
  • Support Oracle ALTER SYSTEM ... statement
  • Support Oracle Named Function ParametersFunc( param1 => arg1, ...
  • Add Gradle build
  • Allow JdbcParameter or JdbcNamedParameter for MySQL FullTextSearch
  • Allow Cast into Row Constructor
  • Support Oracle RENAME ... TO ... statement
  • Support Oracle PURGE statement
  • Support JSON functions JSON_OBJECT(), JSON_ARRAY(), JSON_OBJECTAGG(), JSON_ARRAYAGG()
  • API change: merge ALL and ANY expressions class
  • Allow DB2 compliant CURRENT DATEin addition to CURRENT_DATE (without underscore)

jsqlparser-4.1

30 Jun 22:10
Compare
Choose a tag to compare
  • RESET statement
  • SET LOCAL|SESSION
  • support for nested WITH CTEs
  • support for with (cte) for delete, update and merge
  • introduce a max depth to allow parsing complex expression lists without performance loss (thx to @manticore-projects)
  • allow all functions to have complex expressions as parameters (thx to @manticore-projects)
  • API change FunctionWithCondParams production removed
  • API change in ValuesStatement: the expression list is now hold as a ItemList and not as a List
  • support for parser modification within parseExpression and parseCondExpression
  • support for table schema for foreign keys
  • support for Oracle hints on insert, update and merge
  • support for merge insert where clause
  • allow in as schema name
  • allow skip, algorithm as column name
  • support for functions in an interval expression
  • subArray support arr[1:3]
  • first support for tuples as simple expression SELECT myfunc((f1, f2))
  • support for array constructors array[[1, 2], [id1, id2]]
  • added support for NOT in MySqls REGEXP clause
  • added support for WITH mytble as ( .. ) INSERT INTO ...
  • added support for H2 casewhen function with conditional parameters

jsqlparser-4.0

01 Jan 23:16
Compare
Choose a tag to compare
  • refactored grammar to get a huge speedup for parenthesis in from part like: SELECT * FROM (((((( mytable ))))))
  • allowed cast as unsigned
  • allowed keyword current as jdbc named parameter name
  • Grant allows now multipart names
  • updated JavaCC 7.0.10
  • support for CREATE OR REPLACE for create function statements
  • support for JDBCParameter for interval expressions
  • support for xmlserialize(xmlagg(xmltext( ) ORDER BY ) as ) expression
  • first try to support conditions as select items: SELECT a < b
  • support for DROP SEQUENCE
  • heavy updating of many class files to support fluent like class building and setting of attributes (thx to @gitmotte)
    • update version to 4.0-SNAPSHOT due fluent PR
  • ON UPDATE CASCADE implemented
  • add generated sources to classpath to avoid maven eclipse problems
  • COMMENT ON VIEW implemented
  • allowed Jdbc named parameters within interval expressions
  • allow variable assignments in select statements in different positions
  • allow keywords as object names of, exclude
  • multi part Table name gets automatically resized if the last item is removed
  • first version of a validation framework for sql statements (thx to @gitmotte)

jsqlparser-3.2

28 Jun 19:22
Compare
Choose a tag to compare
  • added options to EXPLAIN statement
  • preserved input of && and avoid translation to AND
  • added multi values in IN expression
  • added COMMENT support for ALTER TABLE statement
  • added some FOREIGN KEY definition improvments
  • allow VALIDATE as column name
  • first support for CREATE SCHEMA and DROP SCHEMA
  • allow ON as a value in a set statement (SET myvalue = ON)
  • support for ALTER TABLE ONLY mytable ...
  • allow foreign key definition in alter statements without referenced columns specification
  • allow datatype binary for column definitions
  • support for ALTER TABLE COLUMN DROP NOT NULL
  • allow order as column name
  • support for table function in IN expression
  • allow complex expressions within all of a case when statement
  • support for parameters in create index statement
  • support for integer parameters for ->> and -> JSON expressions
  • support for more keywords in following parts of multipart object names (e.g. mytab.select, mytab.create, ...)
  • support for OUTER APPLY
  • support for WITH(NOLOCK)
  • support for VIEW as object name
  • functions hold now multipart names
  • support for DISABLE as object name
  • API change in ColumnDefinition.setColumnSpecStrings to ColumnDefinition.setColumnSpecs to better allow the merge between AlterExpression.ColumnDataType and ColumnDefinition

jsqlparser-3.1

06 Nov 22:35
Compare
Choose a tag to compare
  • support for cross apply
  • allowed keyword character as object name
  • allowed keyword size as object name
  • introduced FILTER expression for window functions
  • allow more complex expressions for CASE.
  • allowed start as object name as column name or table name
  • introduced more positions for ! instead of NOT
  • allowed more complex expressions within if function
  • introduced multicolumn alias like select * from mytab as tab(c1, c2)
    • additional type definition is possible (issue #849)

JSqlParser V3.0

29 Aug 21:31
Compare
Choose a tag to compare
  • support for array constructs using square brackets. This collides with square bracket
    quotation of SqlServer. The parser has now a flag to enable this quotation again (CCJSqlParser.withSquareBracketQuotation).
  • support for update table1 inner join table2 ... (API change)
  • support for declare statement
  • allow empty double quotes
  • allow year, month ... as column data type for create table
  • allow duplicate as object name
  • make it JDK 11 buildable
  • switched to minimum JDK 8
  • avoid buffer copy of input data if a normal String input is used
  • allow limit and offset as keywords in specific places
  • DIV operator
  • improved performance for SQLCondition production
  • support for full text search (MATCH..AGAINST)

JSqlParser V2.1

30 Jun 17:06
Compare
Choose a tag to compare
  • support for similar to statement
  • support for show statment (API - change)
  • introduces Statement streaming support by CCJSqlParserUtil.streamStatements
  • improved nested bracket parsing performance by a large scale

JSqlParser V2.0

16 Mar 22:55
Compare
Choose a tag to compare
  • support for GROUPING SETS
  • first support for db date arithmetic
  • support for chained functions
  • first support for FOR XML PATH
  • support for NEXTVAL FOR
  • changed all source code license headers to reflect the dual license of JSqlParser more correctly
  • support of OPTIMIZE FOR 20 ROWS like expressions
  • allowed conditions within then and else of a case statement
    • SELECT * FROM mytable WHERE CASE WHEN a = 1 THEN b IN (1,2,3) ELSE c IN (1,2,3) END
  • change of parsing for not within condition: outer not is represented now by NotExpression
  • support of named parameters for execute: EXEC procedure @param = 'foo'
  • support multivalue set statement
  • support of describe
  • support of explain
  • support of prefix _utf8'strings'
  • allow top keyword as table / column / alias name

JSqlParser V1.4

09 Jan 21:15
Compare
Choose a tag to compare
  • support of substring(col from 2), position('test' in col), .. and more (pull request #702)
  • support of db2 VALUES syntax (issue #561)
  • bugfixes

This is the last 1.x release of JSqlParser.