@@ -2469,6 +2469,7 @@ KW_MEDIUMTEXT = "MEDIUMTEXT"i !ident_start { return 'MEDIUMTEXT'; }
2469
2469
KW_LONGTEXT = "LONGTEXT" i ! ident_start { return ' LONGTEXT' ; }
2470
2470
KW_BIGINT = "BIGINT" i ! ident_start { return ' BIGINT' ; }
2471
2471
KW_FLOAT = "FLOAT" i ! ident_start { return ' FLOAT' ; }
2472
+ KW_REAL = "REAL" i ! ident_start { return ' REAL' ; }
2472
2473
KW_DOUBLE = "DOUBLE" i ! ident_start { return ' DOUBLE' ; }
2473
2474
KW_DATE = "DATE" i ! ident_start { return ' DATE' ; }
2474
2475
KW_DATETIME = "DATETIME" i ! ident_start { return ' DATETIME' ; }
@@ -2802,9 +2803,9 @@ numeric_type_suffix
2802
2803
return result
2803
2804
}
2804
2805
numeric_type
2805
- = t :(KW_NUMERIC / KW_DECIMAL / KW_INT / KW_INTEGER / KW_SMALLINT / KW_TINYINT / KW_BIGINT / KW_FLOAT / KW_DOUBLE ) __ LPAREN __ l :[0-9]+ __ r :(COMMA __ [0-9]+ )? __ RPAREN __ s :numeric_type_suffix ? { return { dataType: t, length: parseInt (l .join (' ' ), 10 ), scale: r && parseInt (r[2 ].join (' ' ), 10 ), parentheses: true , suffix: s }; }
2806
- / t :(KW_NUMERIC / KW_DECIMAL / KW_INT / KW_INTEGER / KW_SMALLINT / KW_TINYINT / KW_BIGINT / KW_FLOAT / KW_DOUBLE )l :[0-9]+ __ s :numeric_type_suffix ? { return { dataType: t, length: parseInt (l .join (' ' ), 10 ), suffix: s }; }
2807
- / t :(KW_NUMERIC / KW_DECIMAL / KW_INT / KW_INTEGER / KW_SMALLINT / KW_TINYINT / KW_BIGINT / KW_FLOAT / KW_DOUBLE ) __ s :numeric_type_suffix ? __ { return { dataType: t, suffix: s }; }
2806
+ = t :(KW_NUMERIC / KW_DECIMAL / KW_INT / KW_INTEGER / KW_SMALLINT / KW_TINYINT / KW_BIGINT / KW_FLOAT / KW_DOUBLE / KW_REAL ) __ LPAREN __ l :[0-9]+ __ r :(COMMA __ [0-9]+ )? __ RPAREN __ s :numeric_type_suffix ? { return { dataType: t, length: parseInt (l .join (' ' ), 10 ), scale: r && parseInt (r[2 ].join (' ' ), 10 ), parentheses: true , suffix: s }; }
2807
+ / t :(KW_NUMERIC / KW_DECIMAL / KW_INT / KW_INTEGER / KW_SMALLINT / KW_TINYINT / KW_BIGINT / KW_FLOAT / KW_DOUBLE / KW_REAL )l :[0-9]+ __ s :numeric_type_suffix ? { return { dataType: t, length: parseInt (l .join (' ' ), 10 ), suffix: s }; }
2808
+ / t :(KW_NUMERIC / KW_DECIMAL / KW_INT / KW_INTEGER / KW_SMALLINT / KW_TINYINT / KW_BIGINT / KW_FLOAT / KW_DOUBLE / KW_REAL ) __ s :numeric_type_suffix ? __ { return { dataType: t, suffix: s }; }
2808
2809
datetime_type
2809
2810
= t :(KW_DATE / KW_DATETIME / KW_TIME / KW_TIMESTAMP ) __ LPAREN __ l :[0-9]+ __ RPAREN { return { dataType: t, length: parseInt (l .join (' ' ), 10 ), parentheses: true }; }
2810
2811
/ t :(KW_DATE / KW_DATETIME / KW_TIME / KW_TIMESTAMP ) { return { dataType: t }; }
0 commit comments