Skip to content

Commit 08c6a48

Browse files
committed
Update README.md
1 parent dfda139 commit 08c6a48

1 file changed

Lines changed: 16 additions & 245 deletions

File tree

README.md

Lines changed: 16 additions & 245 deletions
Original file line numberDiff line numberDiff line change
@@ -6,258 +6,37 @@ Look here for more information and examples: https://github.com/JSQLParser/JSqlP
66

77
Version **0.9** released.
88

9-
Version **0.8.9** released.
10-
11-
Version **0.8.8** released.
12-
13-
Due to incompatibilities using maven release with git v1.8.5 I skipped version 0.8.7. So the actual released version is **0.8.8**.
14-
15-
Recent changes in **0.8.7-SNAPSHOT** for some alias support changes introducing some API changes.
16-
17-
Version **0.8.6** released.
18-
19-
20-
The first release version **0.8.5** is available at maven central (**http://repo1.maven.org/maven2/**) and at repository
21-
**https://oss.sonatype.org/content/groups/public/**.
9+
More news can be found here: https://github.com/JSQLParser/JSqlParser/wiki/News.
2210

11+
## JSqlParser
2312

24-
The maven repository settings have been changed. Version **0.8.5-SNAPSHOT** will be the
25-
first snapshot at sonatypes open source repository location. The following releases will
26-
go there as well and published to maven central. To avoid problems with the original
27-
projects artifacts the *groupid* was changed to **com.github.jsqlparser**. You will find
28-
configuration details below.
13+
JSqlParser is a SQL statement parser. It translates SQLs in a traversable hierarchy of Java classes. JSqlParser is not limited to one database but provides support for a lot of specials of Oracle, SqlServer, MySQL, PostgreSQL ... To name some it has support for Oracles join syntax using (+), PostgreSQLs cast syntax using ::, relational operators like != and so on.
2914

30-
## JSqlParser
15+
## Contributions
16+
To help JSqlParsers development you are encouraged to provide
17+
* feedback
18+
* bugreports
19+
* pull requests for new features
20+
* improvement requests
3121

32-
JSqlParser parses an SQL statement and translate it into a hierarchy of Java classes.
33-
The generated hierarchy can be navigated using the Visitor Pattern.
22+
Also I would like to know about needed examples or documentation stuff.
3423

35-
## Extensions Version 0.9.1
24+
## Extensions in latest Version 0.9.1
3625

3726
* Included support for multitable update statements..
3827

3928
```sql
4029
UPDATE table1, table2 SET table1.col2 = table2.col2, table2.col3 = 'UPDATED' WHERE table1.col1 = table2.col1
4130
```
4231

43-
## Extensions Version 0.9
44-
45-
* Included support for some keyword object names.
46-
47-
```sql
48-
SELECT cast, do FROM tableName
49-
```
50-
51-
* Included support for named primary keys in create table statements.
52-
* Include adapter classes for visitor interfaces to simplify visitor usage.
53-
* included a huge amount of oracle test sqls. There is much room for improvement supporting all oracle syntax specials.
54-
* pivot support for subqueries implemented
55-
56-
```sql
57-
SELECT * FROM (SELECT times_purchased, state_code FROM customers t) PIVOT (count(state_code) FOR state_code IN ('NY', 'CT')) ORDER BY times_purchased
58-
```
59-
60-
* "!=" support corrected to not give "<>" while deparsing
61-
* Improved **COUNT(ALL expr)** support
62-
* lax test utils implemented
63-
* toString() for window elements corrected
64-
* Character Set support included.
65-
66-
```sql
67-
CAST(col2 AS CHAR(255) CHARACTER SET utf8)
68-
```
69-
70-
## Extensions Version 0.8.9
71-
72-
* First multi statements or script support.
73-
* Backported window option from fork to analytic expression.
74-
* Added **NULLS FIRST** and **NULLS LAST** to order by.
75-
* Improved parsing of **top**.
76-
* Improved support for multi part names (SQLServer)
77-
* Better support for signed expressions. The sign is stored in the parse tree.
78-
79-
```sql
80-
SELECT +col, -col FROM mytable
81-
```
82-
83-
* Added **CCJSqlParserUtil.parseExpression** to parse a simple expression. Now you can build expressions from a String like "a+b".
84-
85-
```java
86-
Expression expr = CCJSqlParserUtil.parseExpression("a*(5+mycolumn)");
87-
```
88-
89-
* Improved **SelectUtils** to build simple select statements.
90-
91-
```java
92-
Select select = SelectUtils.buildSelectFromTable(new Table("mytable"));
93-
```
94-
95-
## Extensions Version 0.8.8
96-
97-
* Startet a simple utility class **SelectUtils** to collect basic **select** modification tools.
98-
* addExpression adds a new expression to the select list.
99-
* addJoin adds a new join to the select.
100-
* Added support for optional " AS " for aliases.
101-
102-
```sql
103-
SELECT * FROM mytable myalias
104-
```
105-
106-
* Added first support for ALTER TABLE statements
107-
108-
```sql
109-
ALTER TABLE mytable ADD COLUMN mycolumn varchar (255)
110-
```
111-
112-
* Added support for PostgreSQL regular expression match operators.
113-
114-
```sql
115-
SELECT a, b FROM foo WHERE a ~ '[help].*';
116-
SELECT a, b FROM foo WHERE a ~* '[help].*';
117-
SELECT a, b FROM foo WHERE a !~ '[help].*';
118-
SELECT a, b FROM foo WHERE a !~* '[help].*';
119-
```
120-
121-
## Extensions Version 0.8.6
122-
123-
* Added first support for Oracle hierarchical queries
124-
125-
```sql
126-
SELECT * FROM employees CONNECT BY employee_id = manager_id ORDER BY last_name;
127-
SELECT * FROM employees START WITH employee_id = 100 CONNECT BY PRIOR employee_id = manager_id ORDER SIBLINGS BY last_name;
128-
```
129-
130-
## Extensions Version 0.8.5
131-
132-
* Added support for mysql truncate function
133-
* Changed repository location and groupid of JSqlParsers artifact.
134-
135-
```xml
136-
<dependency>
137-
<groupId>com.github.jsqlparser</groupId>
138-
<artifactId>jsqlparser</artifactId>
139-
<version>0.8.5</version>
140-
</dependency>
141-
```
142-
143-
* Added support for postgresql type **character varying**.
144-
145-
## Extensions Version 0.8.4
146-
147-
* Added support for named JDBC parameters
148-
149-
```sql
150-
SELECT * FROM mytable WHERE b = :param
151-
```
152-
* Added support for pivot expressions
153-
* Added support for boolean functions in where statements
154-
155-
```sql
156-
select * from my_table where bool_func(col)
157-
```
158-
* Added support for Oracles old join syntax for more compare operations
159-
160-
```sql
161-
select * from taba, tabb where taba.a<tabb.a(+)
162-
```
163-
* Added support for foreign keys in create table statements
164-
165-
```sql
166-
create table testTable1 (a varchar(10), b varchar(20), foreign key a references testTable2(a))
167-
create table testTable1 (a varchar(10), b varchar(20), constraint fkIdx foreign key a references testTable2(a))
168-
```
169-
* Added support for simple intervals
170-
171-
```sql
172-
select 5 - INTERVAL '45 MINUTE' from mytable
173-
```
174-
* Added support for multi values IN expression
175-
176-
```sql
177-
select * from mytable where (a,b,c) in (select a,b,c from mytable2)
178-
```
179-
180-
## Extensions Version 0.8.3
181-
182-
* Added support for cross join
183-
* Allowed complex expressions in extract from
184-
* Corrected cast expression to make type parameters usable (e.g. cast(col1 as varchar(255))
185-
* Added support for column comma list in partition by statements
186-
* Added support for columns names in create view statements
187-
188-
```sql
189-
create view testView (col1,col2) as select a, b from table
190-
```
191-
* Added support for column cast using ::
192-
* Added support for from clause in update statements
193-
194-
```sql
195-
update tab1 set c=5 from tab1 inner join tab2 on tab1.col1=tab2.col2
196-
```
197-
* Corrected TableNamesFinder to work with update statements additions.
198-
* Added support for simple create materialized view statements without additional parameters.
199-
200-
```sql
201-
create materialized view testView as select a, b from table
202-
```
203-
* Added support for simple create index statements
204-
205-
```sql
206-
create index myindex on mytab (mycol, mycol2)
207-
```
208-
209-
## Extensions til Version 0.8.2
210-
211-
* Changed project tests to junit 4
212-
* Changed project layout to maven project
213-
* Added regexp (REGEXP) operator
214-
* Added support for SELECT without FROM (e.g. "SELECT 1+2")
215-
* Moved parser from using StringBuffer to using StringBuilder
216-
* Added support for CAST expression
217-
218-
```sql
219-
select cast(col as varchar) from table
220-
```
221-
* Added support for modulo (a % b)
222-
* Added support for brackets quotation
223-
* Added support for NOT expr IS (expr IS NOT was already supported)
224-
* Added support for Oracles (+) Join Syntax
225-
226-
```sql
227-
select * from taba, tabb where taba.a=tabb.a(+)
228-
```
229-
* Added alias visitor to add aliases to selections
230-
* Added connect visitor
231-
* TableNamesFinder moved from tests to main source
232-
* Added proper support for sets (union, intersect)
32+
## Extensions in older releases
23333

234-
```sql
235-
select a from taba union select b from tabb
236-
select a from taba intersect select b from tabb
237-
select a from taba except select b from tabb
238-
select a from taba minus select b from tabb
239-
```
240-
* Added support for `extract(year from datetime-expr)`
241-
* Start implementation of analytical expressions
242-
* merged support for CREATE VIEW
243-
* Added lateral subquery support
244-
* Added support for multi values insert statement
245-
246-
```sql
247-
insert taba (col1,col2) values (1,2), (2,5), (3,20)
248-
```
249-
* Added support for multi values in select statement
34+
* [Release Notes](https://github.com/JSQLParser/JSqlParser/releases)
35+
* Modifications before GitHubs release tagging are listed in the [Older Releases](https://github.com/JSQLParser/JSqlParser/wiki/Older-Releases) page.
25036

251-
```sql
252-
SELECT col FROM (VALUES 1,2) AS MY_TABLE(col)
253-
```
254-
* Added extended support for analytic expressions (empty over clause, parameter within aggregat function)
25537

256-
```sql
257-
SELECT sum(a) over () FROM taba
258-
```
25938

260-
## BUILDING
39+
## BUILDING from the sources
26140

26241
As the project is a Maven project, building is rather simple by running:
26342

@@ -289,15 +68,7 @@ And this is the dependency declaration in your pom:
28968
<dependency>
29069
<groupId>com.github.jsqlparser</groupId>
29170
<artifactId>jsqlparser</artifactId>
292-
<version>0.8.6</version>
71+
<version>0.9</version>
29372
</dependency>
29473
```
29574

296-
## Original project
297-
298-
This is a fork of the jsqlparser originally developed by ultimoamore.
299-
300-
Original project websites:
301-
302-
* http://jsqlparser.sourceforge.net
303-
* http://sourceforge.net/projects/jsqlparser/

0 commit comments

Comments
 (0)