1
Fork 0
Commit graph

85 commits

Author SHA1 Message Date
Jake Wheat
e495e240c0 add default and identity to create table 2015-08-02 18:04:40 +03:00
Jake Wheat
6802aaef5a add simple create table support 2015-08-01 23:16:26 +03:00
Jake Wheat
dfa84072dc start adding basic dml
parser and pretty printer for statements
add query statement
add support for
  insert
  update
  delete
  truncate
bonus ddl:
  limited create schema
  drop schema

add grammar notes to the new test files
2015-08-01 20:26:00 +03:00
Han Joosten
dc5ca57124 Introduced QEComment, constructor, likewise the VEComment constructor 2015-03-14 14:28:05 +01:00
Han Joosten
258eff5298 Introduction of Comment in syntax, to facilitate comments in programatically generated SQL 2015-03-14 12:40:35 +01:00
Jake Wheat
c1c514af35 example how to switch parsing and pretty printing depending on dialect 2014-06-28 15:41:11 +03:00
Jake Wheat
7d63c8f8e5 start on dialect prototype code 2014-06-27 12:19:15 +03:00
Jake Wheat
dbd48baaa1 rename LobTypeName to PrecLengthTypeName
rename LobMultiplier and LobUnits to PrecMultiplier and PrecUnits
remove support for limit syntax
remove the unreserved keyword list since it isn't useful
tests for row value constructors
tests for table value constructors
tests for query specifications
tests for explicit table
work on tests for setops,order by,offset,fetch and sort specification
2014-04-20 23:14:55 +03:00
Jake Wheat
9b2ba2fb36 remove ref typename for consistency
support t and p multipliers in lob lengths
update a few tests
2014-04-20 19:24:03 +03:00
Jake Wheat
7a7f4ba7aa work around for haddock refusal to parse literal comment lines with *
in first character position
get rid of code_units since these are not in sql2011
implement next value for
parse the nullary functions with reserved names
updates to the sql2003 file
2014-04-19 21:17:19 +03:00
Jake Wheat
7057241974 add filter and within group aggregates 2014-04-19 18:01:49 +03:00
Jake Wheat
fdb90c0440 change collate and in chartype to be a list of names
rearrange and add notes to the parser
2014-04-19 12:47:25 +03:00
Jake Wheat
fea6e347bd change joins so natural is represented by separate field to on/using
some fixes and tweaks to the reserved keyword handling, especially in
  the typename parser
2014-04-19 11:18:29 +03:00
Jake Wheat
7a84704516 implement reference type name (I think - cannot find any examples or
explanation of what it means, didn't try reading the standard
  itself, just the grammar)
2014-04-18 21:48:14 +03:00
Jake Wheat
3b86a06e5c implement complete interval literals 2014-04-18 21:38:24 +03:00
Jake Wheat
f64632bbac support two double quotes in quoted identifier plus unicode quoted identifier syntax 2014-04-18 21:09:46 +03:00
Jake Wheat
4e1a1da820 basic multiset support 2014-04-18 20:50:24 +03:00
Jake Wheat
2ff8580dbf complete basic typename support 2014-04-18 19:49:00 +03:00
Jake Wheat
fbdcacc604 modify basic typenames to support dotted names in the syntax
add syntax for most of the other kinds of typenames
add pretty printing for these
todo: the parsing and the tests
2014-04-18 17:55:56 +03:00
Jake Wheat
438e3383e4 fix/work around issues with the keywords parsing
fix the infix and postfix keywords parsing
minor refactoring
2014-04-18 17:51:57 +03:00
Jake Wheat
2cad424379 change the names in the ast to be lists so can support qualified names
everywhere:
  TRSimple: replaces the TRQualified
  Iden
  App name
  AggregateApp name
  WindowApp name
  operator names (not sure if this is used in ansi sql)
  explicit table
  function in from clause
2014-04-18 11:43:37 +03:00
Jake Wheat
3df87a3cf9 change set quantifier and sort direction to represent default separately 2014-04-18 11:18:21 +03:00
Jake Wheat
37dca6596b support character set literals, e.g. N'stuff'
support collate postfix operator
support escape and uescape as postfix operators
change the collate support in substring and trim which isn't a special
  case in the sql 2003 grammar anymore but just a normal collate postfix
  operator, the old code had the collation name as a string, but the
  new style is as an identifier
2014-04-18 00:16:24 +03:00
Jake Wheat
211174cfb4 work on array constructors and expressions 2014-04-17 22:57:33 +03:00
Jake Wheat
d38a5a743a move the typed literal parser around
implement unique predicate, match predicate
change the representation of quantified comparison predicates
2014-04-17 22:35:43 +03:00
Jake Wheat
6720d3e3a3 add support for named host parameters 2014-04-17 19:27:18 +03:00
Jake Wheat
79fde02d81 fix default for distinct/all in union in the pretty printer 2014-04-09 18:31:14 +03:00
Sönke Hahn
2e91fb9e81 Allow qualified names ('schema.table') in from clauses 2014-01-22 15:54:14 +08:00
Jake Wheat
9611885448 update changelog, small haddock fixes 2013-12-31 12:20:07 +02:00
Jake Wheat
9e75fa9365 hlint 2013-12-31 11:44:10 +02:00
Jake Wheat
7cf5275615 swap order in select lists so the expression comes first then the alias to match the order in the concrete syntax 2013-12-31 11:31:00 +02:00
Jake Wheat
552d3f5383 use Parser type from Text.Parsec.String, make imports explicit 2013-12-31 11:21:03 +02:00
Jake Wheat
df7e6f87da change pretty printer to output 'fetch first' instead of 'fetch next' 2013-12-19 12:54:48 +02:00
Jake Wheat
3b2730fd99 rename ScalarExpr -> ValueExpr which is slightly more standard, add notes on new fixity implementation 2013-12-19 11:46:51 +02:00
Jake Wheat
b68c116839 add support for ? for parameterized queries 2013-12-19 10:44:20 +02:00
Jake Wheat
1be27eca58 rename Duplicates -> SetQuantifier + qeDuplicates -> qeSetQuantifier 2013-12-19 10:34:32 +02:00
Jake Wheat
b631497a04 renames OrderField->SortSpec, InThing->InPredValue 2013-12-18 16:27:06 +02:00
Jake Wheat
b89f2a011c fixes for substring, change the abstract syntax for extract and
substring, and add the addition operators position, convert,
  translate, overlay and trim
2013-12-18 15:51:55 +02:00
Jake Wheat
60cf309953 fix haddock, hlint, rename Prec2TypeName to PrecScaleTypeName 2013-12-17 20:46:29 +02:00
Jake Wheat
e61672ebf8 hlint 2013-12-17 20:27:11 +02:00
Jake Wheat
558d44140a add support for typenames with precision and scale 2013-12-17 19:52:14 +02:00
Jake Wheat
b703e04af3 add syntax for new grouping expressions 2013-12-17 19:17:03 +02:00
Jake Wheat
7d094182b7 add support for multiple case when expressions 2013-12-17 18:42:00 +02:00
Jake Wheat
ebe522b21d add support for nulls first/last 2013-12-17 18:28:31 +02:00
Jake Wheat
e85ab8b831 add names/docs to some of the scalar expr constuctor fields, add partial support for explicit window frames 2013-12-17 17:29:49 +02:00
Jake Wheat
e03090a6a1 add support for rowctor without row, e.g. (1,2) 2013-12-17 16:20:05 +02:00
Jake Wheat
b2728ec9bf add support for ansi standard offset and fetch syntax 2013-12-17 16:00:17 +02:00
Jake Wheat
8093498f2d generalize . to a binary operator 2013-12-17 15:21:43 +02:00
Jake Wheat
8adc169b38 add support for '' in string literals 2013-12-17 15:09:28 +02:00
Jake Wheat
72b67166d9 add support for 'table t' syntax 2013-12-17 13:58:44 +02:00