Commit graph

50 commits

Author SHA1 Message Date
Tobie Morgan Hitchcock
db1864224b Implement async document processing in queries 2019-06-14 18:33:41 +01:00
Tobie Morgan Hitchcock
b5998496e0 Convert IfelExpression to SubExpression
Instead of having separate IfelExpression types, instead make IfelseStatement a subtype of SubExpression, and allow it without brackets.
2019-02-10 23:17:01 +00:00
Tobie Morgan Hitchcock
71192d2e36 Improve ORDER BY COLLATE queries 2019-02-01 00:12:10 +00:00
Tobie Morgan Hitchcock
7c962f7bdc Add SQL OPTION query statement 2019-01-31 09:47:52 +00:00
Tobie Morgan Hitchcock
33ba4d5de3 Enable using dollar symbol when defining a param variable 2019-01-08 15:51:53 +00:00
Tobie Morgan Hitchcock
c0f9ec1f26 Implement PARALLEL keyword on queries 2018-07-17 09:35:36 +01:00
Tobie Morgan Hitchcock
8ab01b510f Remove unused code 2018-05-30 13:25:53 +01:00
Tobie Morgan Hitchcock
abe117b7d3 Don’t mask the named return values
The defer function is expecting an expression value, not a nil value, and therefore we shouldn’t override the named return values in the function.
2018-04-20 23:49:45 +01:00
Tobie Morgan Hitchcock
2a74759a71 Enable IF and RUN statements in MultStatements 2018-04-14 18:36:28 +01:00
Tobie Morgan Hitchcock
0dc9ad339c Enable multiple expressions with database events
It is now possible to run multiple query expressions when an event on a table has occured. Query expressions can be separated with a semicolon, and will be run in the same transaction as the main query.
2018-04-04 19:20:07 +01:00
Tobie Morgan Hitchcock
0dae9d2366 Add sql.MultExpression type 2018-03-18 21:01:29 +00:00
Tobie Morgan Hitchcock
f77daca0da Simplify subquery parsing 2018-03-18 20:01:41 +00:00
Tobie Morgan Hitchcock
b54e551353 No need to pass sql.parser into sql.scanner 2018-01-10 13:07:09 +00:00
Tobie Morgan Hitchcock
0c607302ed Ensure one can specify regexes in sql expressions 2017-12-11 15:59:55 +00:00
Tobie Morgan Hitchcock
84b9cdc93a Fix binary equality tree parsing and calculations. 2017-12-06 20:18:57 +00:00
Tobie Morgan Hitchcock
ccdc6fb8ea Add ability to define the order fields are processed 2017-12-05 01:57:25 +00:00
Tobie Morgan Hitchcock
e27a9e78a7 Enable password field type without need to quote 2017-12-05 01:13:50 +00:00
Tobie Morgan Hitchcock
42bbc078e0 Don’t allow params inside SQL PathExpressions 2017-11-29 10:21:02 +00:00
Tobie Morgan Hitchcock
1d08949fff Full update of the SQL package 2017-11-16 20:53:13 +00:00
Tobie Morgan Hitchcock
aa7e4ac561 Enable model expressions in SQL parser
The SQL parser now supports model expressions for defining ranges using the |table:0,0.5..100| notation syntax.
2017-04-14 13:21:08 +01:00
Tobie Morgan Hitchcock
2de5a8fa3f Simplify parsing @table:thing definitions 2017-04-14 13:13:31 +01:00
Tobie Morgan Hitchcock
a3da779190 Improve SQL error messages 2017-04-12 18:45:52 +01:00
Tobie Morgan Hitchcock
98db89a2d7 Implement query statement timeout functionality 2017-03-02 14:38:56 +00:00
Tobie Morgan Hitchcock
2d5151c8ba Enable SQL AST string formatting 2017-03-02 10:47:10 +00:00
Tobie Morgan Hitchcock
e4bef0c4b7 Differentiate between IDENT and EXPR in SQL
Previously it was possible to CREATE/UPDATE/DELETE path expressions as this would satisfy an IDENT in the SQL parser.

Now however, there is a difference between an IDENT and an EXPR…

IDENT: person | person_main | person123
EXPR: person | person.path | person[0].path

As a result, path expressions are only possible when setting data or setting conditional conditions.
2017-02-24 13:05:07 +00:00
Tobie Morgan Hitchcock
a941987349 Remove unnecessary return statement 2017-02-03 19:08:37 +00:00
Tobie Morgan Hitchcock
75b5f2f412 Improve SQL DEFINE TOKEN statements 2016-11-22 19:10:42 +00:00
Tobie Morgan Hitchcock
063de926ed Improve SQL DEFINE LOGIN statements 2016-11-22 19:10:32 +00:00
Tobie Morgan Hitchcock
f150e5b587 Increase bit length of SQL TOKEN keys 2016-11-22 19:09:02 +00:00
Tobie Morgan Hitchcock
8cdae77483 Generate token keys in SQL and store as binary 2016-11-22 13:51:21 +00:00
Tobie Morgan Hitchcock
bb752eb124 Encrypt SQL LOGIN password immediately 2016-11-22 13:36:57 +00:00
Tobie Morgan Hitchcock
63e516b63f Add method for parsing json object directly 2016-11-14 13:22:43 +00:00
Tobie Morgan Hitchcock
0292140d3c Enable NOW keyword as shortcut for now() in SQL 2016-11-09 15:16:09 +00:00
Tobie Morgan Hitchcock
68c22bc25c Add subqueries, subexpressions, and paths to SQL 2016-11-04 09:58:11 +00:00
Tobie Morgan Hitchcock
7e9c595ff7 Add blueprint for RELATE SQL query 2016-10-30 16:59:16 +00:00
Tobie Morgan Hitchcock
174cc8bcad Add SQL LET statements with bound parameters 2016-10-29 12:28:20 +01:00
Tobie Morgan Hitchcock
2290a95ec6 Add SQL SCOPE query type 2016-10-18 14:27:17 +01:00
Tobie Morgan Hitchcock
9436a752d8 Alow @thing to be used as DEFAULT values in fields 2016-09-19 14:47:11 +01:00
Tobie Morgan Hitchcock
1fc814bb43 Parse tables and @things better 2016-09-14 22:22:31 +01:00
Tobie Morgan Hitchcock
974f75eea0 Uunexport methods which don’t need to be public 2016-09-14 22:21:25 +01:00
Tobie Morgan Hitchcock
020dbbe0c2 Allow numbers, dates, times as table names 2016-09-07 16:58:25 +01:00
Tobie Morgan Hitchcock
f8562f1ccb Parse record ids whole instead of seperately 2016-09-07 16:58:05 +01:00
Tobie Morgan Hitchcock
96b44a8da6 Move standalone methods to parser class, and allow scanner to access parser 2016-09-07 16:40:05 +01:00
Tobie Morgan Hitchcock
08943946a9 Improvements on sql parser 2016-09-06 14:30:59 +01:00
Tobie Morgan Hitchcock
4af24a5ca0 Add functionality to database defined fields 2016-07-21 22:48:32 +01:00
Tobie Morgan Hitchcock
88b59dc81e Update sql package for alpha testing 2016-07-04 11:37:37 +01:00
Tobie Morgan Hitchcock
3b73fa79c1 Remove comment 2016-05-24 14:53:05 +01:00
Tobie Morgan Hitchcock
7df41f388f Allow extra values in tables and ids 2016-05-24 13:51:52 +01:00
Tobie Morgan Hitchcock
5e6f2f9c5a Update sql package 2016-05-23 13:32:02 +01:00
Tobie Morgan Hitchcock
89b71cbe72 Add initial sql parser code 2016-02-26 17:27:07 +00:00