This file goes through the grammar for SQL 2011 (using the draft standard). We are only looking at the query syntax, and no other parts. The goal is to create some example tests for each bit of grammar, with some areas getting more comprehensive coverage tests, and also to note which parts aren't currently supported. > module Language.SQL.SimpleSQL.SQL2011 (sql2011Tests) where > import Language.SQL.SimpleSQL.TestTypes > import Language.SQL.SimpleSQL.Syntax > sql2011Tests :: TestItem > sql2011Tests = Group "sql 2011 tests" > [literals > ,identifiers > ,typeNameTests > ,fieldDefinition > ,valueExpressions > ,queryExpressions > ,scalarSubquery > ,predicates > ,intervalQualifier > ,collateClause > ,aggregateFunction > ,sortSpecificationList > ] = 5 Lexical elements The tests don't make direct use of these definitions. == 5.1 Function Define the terminal symbols of the SQL language and the elements of strings. ::= ::= | | ::= | ::= A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z ::= a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 ::= | | | | | | | | | | | | | | | | | | | | | | | | | ::= !! See the Syntax Rules. ::= " ::= % ::= & ::= ' ::= ( ::= ) ::= * ::= + ::= , ::= - ::= . ::= / ::= \ ::= : ::= ; ::= < ::= = ::= > ::= ? ::= | ::= | ::= [ ::= ??( ::= ] ::= ??) ::= ^ ::= _ ::= | ::= { ::= } == 5.2 and Function Specify lexical units (tokens and separators) that participate in SQL language. ::= | ::= | | | | | | | | ::= ::= [ ... ] ::= | ::= !! See the Syntax Rules. ::= !! See the Syntax Rules. ::= ... ::= K | M | G | T | P ::= ::= ... ::= | ::= U ::= [ UESCAPE ] ::= ... ::= | ::= | | ::= ::= ::= ::= !! See the Syntax Rules. ::= !! See the Syntax Rules. ::= ""!! two consecutive double quote characters ::= | |