Jeffrey
98403c07b1
Allow parsing of mysql empty row inserts ( #783 )
2023-01-02 06:51:13 -05:00
Ophir LOJKINE
524b8a7e7b
Add a mutable visitor ( #782 )
...
* Add a mutable visitor
This adds the ability to mutate parsed sql queries.
Previously, only visitors taking an immutable reference to the visited structures were allowed.
* add utility functions for mutable visits
* bump version numbers
2023-01-02 06:48:20 -05:00
Andrew Lamb
86d71f2109
(cargo-release) version 0.29.0
2022-12-29 08:07:19 -06:00
Andrew Lamb
890062c36d
Changelog for 29.0.0 ( #780 )
...
* Changelog for 29.0.0
* updates
2022-12-29 09:06:17 -05:00
Andrew Lamb
87df09be18
Improve docs and add examples for Visitor ( #778 )
...
* Improve docs and add examples for Visitor
* Update src/ast/visitor.rs
Co-authored-by: Raphael Taylor-Davies <1781103+tustvold@users.noreply.github.com>
* Update src/ast/visitor.rs
Co-authored-by: Raphael Taylor-Davies <1781103+tustvold@users.noreply.github.com>
Co-authored-by: Raphael Taylor-Davies <1781103+tustvold@users.noreply.github.com>
2022-12-29 08:56:41 -05:00
Andrew Lamb
fc503e08c9
Add a backlink from sqlparse_derive
to sqlparser
and publishing instructions ( #779 )
...
* Add backlink to sqlparser-rs in derive docs
* Update release docs for sqlparser_derive
2022-12-29 07:55:42 -05:00
Jeffrey
cf3fe64af6
ParserError if nested explain ( #781 )
2022-12-29 07:55:10 -05:00
Andrew Lamb
b93d82dfca
Fix cargo docs / warnings
and add CI check ( #777 )
...
* Fix all rustdoc links
* Add docs CI check
* workflow
* test error
* fix yml
* fix yml
* Revert "test error"
This reverts commit 96a40a88a3
.
* fix
* more
2022-12-29 07:53:51 -05:00
Alex Vasilev
072ccc0d76
feat: dollar-quoted strings support ( #772 )
...
* feat: support dollar-quoted strings
* remove comment
* unused code
* removed debugging
* added tests
* fmt
* clippy
* updated tests
2022-12-29 07:52:17 -05:00
Andrew Lamb
0c9ec40082
Document new features, update authors ( #776 )
2022-12-28 11:13:25 -05:00
Andrew Lamb
751046de7d
Improve Readme ( #774 )
2022-12-28 10:49:51 -05:00
Raphael Taylor-Davies
dec3c2b818
Add derive based AST visitor ( #765 )
...
* Add derive based AST visitor
* Fix BigDecimal
* Fix no visitor feature
* Add test
* Rename visit_table to visit_relation
* Review feedback
* Add pre and post visit
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-12-28 10:07:12 -05:00
김진성 Kim Jinsung
3e990466f8
Support CREATE TABLE ON UPDATE <expr>
Function ( #685 )
...
* feat : OnUpdate Function Implement
* feat : add GenericDialect Options
2022-12-28 08:59:09 -05:00
Andrew Lamb
b1a000f149
Standardize comments on parsing optional keywords ( #773 )
2022-12-28 08:52:12 -05:00
henry
61c661c234
Support ALTER INDEX {INDEX_NAME} RENAME TO {NEW_INDEX_NAME}
( #767 )
...
* test: add a case `rename_index`
* feat: add AlterIndex match arm
* fix: remove todo with self.expected
* chore: add comment to unreachable
2022-12-28 08:35:27 -05:00
Jeffrey
f0870fd315
Enable grouping sets parsing for GenericDialect ( #771 )
2022-12-28 08:31:39 -05:00
Andrew Lamb
79d0baad73
Add configurable recursion limit to parser, to protect against stack overflows ( #764 )
2022-12-28 08:29:51 -05:00
Jeffrey
2c20ec0be5
Support parsing scientific notation (such as 10e5
) ( #768 )
2022-12-28 08:28:53 -05:00
zidaye
2d801c9fb6
Support DROP FUNCTION
syntax ( #752 )
...
* drop function
* update and to Option
* fix review
* update
* fmt
2022-12-28 07:57:51 -05:00
Audun Skaugen
3d5cc54dcf
Generalize conflict target ( #762 )
...
Postgres supports `ON CONFLICT ON CONSTRAINT <constraint_name>` to
explicitly name the constraint that fails. Support this.
2022-12-17 07:38:57 -05:00
Audun Skaugen
6d6eb4bc9b
Support json operators @>
<@
#-
@?
and @@
...
postgres supports a bunch more json operators. See
https://www.postgresql.org/docs/15/functions-json.html
Skipping operators starting with a question mark for now, since those
are hard to distinguish from placeholders without more context.
2022-12-14 14:54:56 -05:00
Audun Skaugen
fb02344131
Generalize locking clause ( #759 )
...
Postgres supports more generalized locking clauses, for example:
FOR UPDATE OF <table_name> SKIP LOCKED
also, multiple locking clauses. Generalize the parser to support these.
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-12-13 17:19:07 -05:00
zidaye
6c545195e1
support create function definition with $$
( #755 )
...
* support create function definition using '2700775'
* fix warn
2022-12-13 17:15:33 -05:00
Ziinc
d420001c37
fix: unnest join constraint with alias parsing for BigQuery dialect ( #732 )
...
* fix: unnest join constraint with alias parsing for BigQuery dialect
* chore: fix failing tests
2022-12-13 16:44:45 -05:00
Andrew Lamb
650c53dc77
Add negative test for except clause on wildcards ( #746 )
2022-12-07 12:19:43 -05:00
yuval-illumex
01fd20f0a3
Support the type key ( #750 )
2022-12-06 16:07:53 -05:00
Wei-Ting Kuo
bda8268e56
add keyword NANOSECOND ( #749 )
2022-12-06 15:29:41 -05:00
Ankur Goyal
813f4a2eff
Introduce location tracking in the tokenizer and parser ( #710 )
...
* Add locations
* Add PartialEq
* Add PartialEq
* Add some tests
* Fix rebase conflicts
* Fix clippy
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-12-05 14:47:42 -05:00
Andrew Lamb
512a159f08
(cargo-release) version 0.28.0
2022-12-05 14:26:15 -05:00
Andrew Lamb
84291088d9
CHANGELOG.md for 0.28.0 ( #747 )
2022-12-05 14:21:06 -05:00
Augusto Fotino
b3688513eb
feat: add support for except clause on wildcards ( #745 )
2022-12-05 14:03:59 -05:00
Runji Wang
5b53df97c4
Support postgres CREATE FUNCTION
( #722 )
...
* support basic pg CREATE FUNCTION
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* support function argument
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* fix display and use verify in test
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* support OR REPLACE
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* fix compile error in bigdecimal
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* unify all `CreateFunctionBody` to a structure
Signed-off-by: Runji Wang <wangrunji0408@163.com>
Signed-off-by: Runji Wang <wangrunji0408@163.com>
2022-12-01 16:08:49 -05:00
Andrew Lamb
f621142f89
Clean up some redundant code in parser ( #741 )
2022-12-01 13:12:27 -05:00
Sarah Yurick
528b3f2234
Support CREATE TABLE x AS TABLE y
( #704 )
...
* first commit
* fix style and edit test
* fix test?
* remove unnecessary logic
* refactor implementation
* codestyle
* add schema support
* codestyle and lint
* Apply suggestions from code review
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* PartialOrd and Ord
* clean up parser logic
* codestyle and lint
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-12-01 09:56:14 -05:00
Aljaž Mur Eržen
8e1c90c0d8
Support MySQL ROWS
syntax for VALUES
( #737 )
...
* Adapt VALUES to MySQL dialect
* Update src/ast/query.rs
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* remove *requirement* for ROW
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-12-01 09:46:55 -05:00
Andrew Lamb
faf75b7161
fix logical conflict
2022-11-30 13:34:31 -05:00
zidaye
042effdf14
update on conflict method ( #735 )
2022-11-30 13:33:33 -05:00
yuval-illumex
a422116b89
inital commit ( #736 )
2022-11-30 13:33:15 -05:00
Andrew Lamb
77eddfcc8d
minor cleanup to avoid is_ok()
( #740 )
2022-11-30 19:25:17 +01:00
Andrew Lamb
bd35273789
Cleanup: avoid using unreachable!
when parsing semi/anti join ( #738 )
2022-11-30 19:25:02 +01:00
Andrew Lamb
b17c44a64a
Docs: Add an example to clarify semantic analysis ( #739 )
2022-11-30 19:24:13 +01:00
Han YANG
e22aa78315
fix: handle nested comments ( #726 )
2022-11-30 13:22:29 -05:00
mao
316359760d
Support USING method when creating indexes. ( #731 )
...
* fix: create index using function
* fix: code style
Co-authored-by: yangjiaxin <yangjiaxin@qianxin.com>
2022-11-30 13:17:38 -05:00
Tao Wu
7101e0021f
feat: add method to get current parsing index ( #728 )
2022-11-30 13:14:47 -05:00
Augusto Fotino
6f48fc9acb
docs: add information about parting semantic logic to README.md ( #724 )
2022-11-30 13:03:10 -05:00
mingmwang
96bca38fae
Support SEMI/ANTI JOIN syntax ( #723 )
2022-11-30 12:57:45 -05:00
Andrew Lamb
1f22ea74ae
fix: logical conflicts
2022-11-30 12:55:55 -05:00
Augusto Fotino
fa6bd01b19
Support EXCLUDE support for snowflake and generic dialect ( #721 )
...
The exclude clause can be used after a possibly qualified on SELECT
2022-11-30 12:29:43 -05:00
Augusto Fotino
3df0e444c8
Add 'compression' as keyword ( #720 )
2022-11-30 12:26:35 -05:00
Augusto Fotino
5e1d9f8d6e
Derive PartialOrd
, Ord
, and Copy
whenever possible ( #717 )
...
This allow other projects to use our structures inside others that need
those.
2022-11-30 12:25:59 -05:00