Commit graph

241 commits

Author SHA1 Message Date
Tobie Morgan Hitchcock
b720213bd4 Perform authentication access checks in SQL layer 2016-11-04 11:25:53 +00:00
Tobie Morgan Hitchcock
defe873d7d Add back in field parsing expressions 2016-11-04 11:17:11 +00:00
Tobie Morgan Hitchcock
57f49576db Serialize and deserialize Tokens as strings 2016-11-04 11:16:41 +00:00
Tobie Morgan Hitchcock
b0ab86c4ef Add KV, NS, DB to LET and RETURN SQL ASTs
All queries which manipulate the data layer in any way, should at least store the authenticated/selected NS and DB options, even if they do not actually use them when running the SQL statement.
2016-11-04 11:15:05 +00:00
Tobie Morgan Hitchcock
d8a2d40d34 Update SQL tests 2016-11-04 11:13:34 +00:00
Tobie Morgan Hitchcock
b5c8b21eb6 Enable durations to be specified without “” marks 2016-11-04 10:04:55 +00:00
Tobie Morgan Hitchcock
4d9f9b297e Fix single line comment bug
Comments which were on the last line of an SQL query would cause the scanner to never reach the end of the reader stream, hangining indefinitely.

This fix ensures that the single line comment is ended when an EOF is reached.
2016-11-04 10:04:31 +00:00
Tobie Morgan Hitchcock
6e4a229a96 Add && + || as alternatives for AND + OR in SQL 2016-11-04 10:03:07 +00:00
Tobie Morgan Hitchcock
e0bcd5ff37 No need to create extra variable 2016-11-04 10:02:00 +00:00
Tobie Morgan Hitchcock
b5da299ea3 Add CORK self encoding to SQL objects 2016-11-04 10:01:32 +00:00
Tobie Morgan Hitchcock
68c22bc25c Add subqueries, subexpressions, and paths to SQL 2016-11-04 09:58:11 +00:00
Tobie Morgan Hitchcock
28d1806785 Simplify JSON expression parsing 2016-11-04 09:45:11 +00:00
Tobie Morgan Hitchcock
45be69637e Add ‘record’ as a field type 2016-11-04 09:42:00 +00:00
Tobie Morgan Hitchcock
1733f84070 Enable main SQL commands to be within subqueries 2016-11-03 17:20:18 +00:00
Tobie Morgan Hitchcock
dd21b8879a Only do function argument checking in sql parser 2016-11-03 17:16:08 +00:00
Tobie Morgan Hitchcock
3b20033ebf Update PATH token types
Remove unused PATH token and move EDGE tokens to literals.
2016-11-03 08:13:34 +00:00
Tobie Morgan Hitchcock
7e9c595ff7 Add blueprint for RELATE SQL query 2016-10-30 16:59:16 +00:00
Tobie Morgan Hitchcock
feea12f93d Remove unused and backup SQL keywords 2016-10-30 14:05:29 +00:00
Tobie Morgan Hitchcock
151d73b954 Remove MODIFY SQL command and add DIFF to UPDATE
MODIFY SQL statements have now been merged with UPDATE SQL statements, as the functionality was similar, but the code was duplicated.

The DIFF SQL command has been added to the UPDATE query, so that records can be updated with DIFFs.
2016-10-30 00:33:28 +01:00
Tobie Morgan Hitchcock
872f4abf43 Update SQL package tests 2016-10-29 18:47:09 +01:00
Tobie Morgan Hitchcock
d4491d557b Support JSON and ARRAYS in RETURN statements 2016-10-29 18:46:48 +01:00
Tobie Morgan Hitchcock
c08e9d69c9 Use actual @things not strings for item ids 2016-10-29 12:44:49 +01:00
Tobie Morgan Hitchcock
6077dc2952 Add SQL RETURN statements 2016-10-29 12:29:20 +01:00
Tobie Morgan Hitchcock
174cc8bcad Add SQL LET statements with bound parameters 2016-10-29 12:28:20 +01:00
Tobie Morgan Hitchcock
cc74e7a67e Use interface type for @thing TB 2016-10-29 11:38:52 +01:00
Tobie Morgan Hitchcock
abf9c937be Ensure @thing:id is int64 if whole number 2016-10-29 10:20:10 +01:00
Tobie Morgan Hitchcock
4951aa61f6 Enable double slash single line comments 2016-10-24 12:11:12 +01:00
Tobie Morgan Hitchcock
4c8d5213dc Add double FIELD TYPE and improve type checking 2016-10-20 14:14:10 +01:00
Tobie Morgan Hitchcock
2290a95ec6 Add SQL SCOPE query type 2016-10-18 14:27:17 +01:00
Tobie Morgan Hitchcock
b5ff2cc1cb Enable text formatting for some sql ast structs 2016-10-14 22:53:27 +01:00
Tobie Morgan Hitchcock
a38e337513 Add SQL SCOPE query ast 2016-10-14 22:21:25 +01:00
Tobie Morgan Hitchcock
8ebc77465c Add SQL LIVE query ast 2016-10-14 22:21:17 +01:00
Tobie Morgan Hitchcock
a4520ca669 Add reserved keywords for SCOPE queries 2016-10-14 22:21:05 +01:00
Tobie Morgan Hitchcock
99012cb015 Add LIVE as reserved sql keyword 2016-10-14 22:17:58 +01:00
Tobie Morgan Hitchcock
9d490950a4 Add SQL VIEW to sql tests 2016-10-14 22:15:40 +01:00
Tobie Morgan Hitchcock
4e20db990a Add IF to sql reserved words 2016-10-14 22:06:05 +01:00
Tobie Morgan Hitchcock
115c97ce86 Remove code in rules and use SQL WHERE clause 2016-10-14 22:05:44 +01:00
Tobie Morgan Hitchcock
a16f7b2aba Add SCHEMALESS / SCHEMAFULL support to queries 2016-10-14 21:31:45 +01:00
Tobie Morgan Hitchcock
daa8db511c Add RETURN INFO command to sql queries 2016-10-14 08:01:56 +01:00
Tobie Morgan Hitchcock
f23d1e10d7 Use int64 instead of float64 for non decimal numbers 2016-10-14 07:55:53 +01:00
Tobie Morgan Hitchcock
6da2e371ca Remove RECORD keyword 2016-10-14 07:54:26 +01:00
Tobie Morgan Hitchcock
dd79f3c440 Remove SQL RECORD statement 2016-10-07 14:21:01 +01:00
Tobie Morgan Hitchcock
25c86a49da Use cork serialization for data storage 2016-10-02 00:17:19 +01:00
Tobie Morgan Hitchcock
bbae9a5fac Enable ability to RETURN INFO 2016-09-21 17:56:27 +01:00
Tobie Morgan Hitchcock
504c1b81e2 Simplify code 2016-09-21 00:37:03 +01:00
Tobie Morgan Hitchcock
66f09db9f5 Add SQL VIEWs 2016-09-21 00:36:37 +01:00
Tobie Morgan Hitchcock
f37ec653d1 Remove SQL EXPLAIN command 2016-09-21 00:34:21 +01:00
Tobie Morgan Hitchcock
bde073cd36 Update SQL ASTs 2016-09-21 00:25:39 +01:00
Tobie Morgan Hitchcock
7d5bff29aa Add additional sql functions 2016-09-21 00:24:03 +01:00
Tobie Morgan Hitchcock
20fe168587 Remove unused EAT @ token 2016-09-20 14:03:53 +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
3089b6460f Switch SQL RULES and SQL TABLE order 2016-09-19 11:12:08 +01:00
Tobie Morgan Hitchcock
ab30c6b85e Add SQL INFO query command 2016-09-19 11:08:44 +01:00
Tobie Morgan Hitchcock
3bbfa7919a Update Statement ASTs 2016-09-14 22:23:02 +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
9bbbf4491a Ensure parsed times are stored in UTC 2016-09-14 21:57:42 +01:00
Tobie Morgan Hitchcock
9940640a45 Remove unused token 2016-09-14 21:50:04 +01:00
Tobie Morgan Hitchcock
0a7e93d799 Allow bound params for DIFF, MERGE, CONTENT 2016-09-14 21:49:27 +01:00
Tobie Morgan Hitchcock
19d7c2a14e Don’t embed document data 2016-09-14 21:46:23 +01:00
Tobie Morgan Hitchcock
48b644f399 Remove RESYNC INDEX command 2016-09-14 10:23:57 +01:00
Tobie Morgan Hitchcock
4836c498a4 Enable parsing tables as struct not string 2016-09-07 17:01:32 +01:00
Tobie Morgan Hitchcock
b82216af21 Enable setting fields to record ids 2016-09-07 16:59:01 +01:00
Tobie Morgan Hitchcock
9492ed7244 Update SQL tests 2016-09-07 16:58:50 +01:00
Tobie Morgan Hitchcock
2fb4791387 Allow modifying whole tables with DIFFs 2016-09-07 16:58:37 +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
1219b3825f Use values parsed in scanner instead of reparsing 2016-09-07 16:53:04 +01:00
Tobie Morgan Hitchcock
af4281c920 Enable bound parameters in sql queries 2016-09-07 16:44:23 +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
c355464094 Add blueprints for sql functions 2016-09-06 14:31:25 +01:00
Tobie Morgan Hitchcock
08943946a9 Improvements on sql parser 2016-09-06 14:30:59 +01:00
Tobie Morgan Hitchcock
5c094a011d Add blueprint for defined RULES logic 2016-07-21 22:50:16 +01:00
Tobie Morgan Hitchcock
4af24a5ca0 Add functionality to database defined fields 2016-07-21 22:48:32 +01:00
Tobie Morgan Hitchcock
8431079025 Enable comments in SQL code 2016-07-21 22:45:35 +01:00
Tobie Morgan Hitchcock
f57e042aa4 Remove sql tests for CIPHERKEY 2016-07-21 22:43:52 +01:00
Tobie Morgan Hitchcock
a06263d738 Disable individual encryption per transaction 2016-07-19 17:38:32 +01:00
Tobie Morgan Hitchcock
88b59dc81e Update sql package for alpha testing 2016-07-04 11:37:37 +01:00
Tobie Morgan Hitchcock
25766ce0e2 Simplify code expression 2016-05-25 12:36:45 +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
e30ecaf0f9 Allow 16, 24, or 32 bit encryption keys 2016-05-24 10:27:29 +01:00
Tobie Morgan Hitchcock
5e6f2f9c5a Update sql package 2016-05-23 13:32:02 +01:00
Tobie Morgan Hitchcock
8af0f460de Remove sql views 2016-03-15 13:30:16 +00:00
Tobie Morgan Hitchcock
b5d71e6fec Add test for empty queries 2016-02-28 09:38:12 +00:00
Tobie Morgan Hitchcock
d708dab39e ParseString / ParseBuffer as standalone functions in parser package 2016-02-27 12:35:13 +00:00
Tobie Morgan Hitchcock
07da6b637d Ensure empty queries cause errors 2016-02-27 12:05:35 +00:00
Tobie Morgan Hitchcock
63b5185634 Update SQL ParseError message 2016-02-27 12:02:41 +00:00
Tobie Morgan Hitchcock
fc543e422c Remove INSERT and UPSERT sql commands 2016-02-27 09:44:49 +00:00
Tobie Morgan Hitchcock
6b6755695b Add set ∋ / ∌ to SQL where clauses 2016-02-26 17:45:40 +00:00
Tobie Morgan Hitchcock
89b71cbe72 Add initial sql parser code 2016-02-26 17:27:07 +00:00