File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -252,6 +252,14 @@ JAVA: 'JAVA';
252252SCALA : ' SCALA' ;
253253PYTHON : ' PYTHON' ;
254254JAR : ' JAR' ;
255+ FILE : ' FILE' ;
256+ PYTHON_FILES : ' PYTHON_FILES' ;
257+ PYTHON_REQUIREMENTS : ' PYTHON_REQUIREMENTS' ;
258+ PYTHON_DEPENDENCIES : ' PYTHON_DEPENDENCIES' ;
259+ PYTHON_JAR : ' PYTHON_JAR' ;
260+ PYTHON_ARCHIVES : ' PYTHON_ARCHIVES' ;
261+ PYTHON_PARAMETER : ' PYTHON_PARAMETER' ;
262+ ENGINE : ' ENGINE' ;
255263CATALOGS : ' CATALOGS' ;
256264VIEWS : ' VIEWS' ;
257265JARS : ' JARS' ;
@@ -345,7 +353,9 @@ REAL_LITERAL: (DEC_DIGIT+)? '.' DEC_DIGIT+
345353BIT_STRING : BIT_STRING_L ;
346354ID_LITERAL : ID_LITERAL_FRAG ;
347355PLUS_ID_LITERAL : PLUS_ID_LITERAL_FRAG ;
356+ FILE_PATH : FILE_PATH_STRING ;
348357
358+ fragment FILE_PATH_STRING : ([/\\] (~([/\\ ]))*)+;
349359fragment JAR_FILE_PARTTARN : ' `' ( ' \\ ' . | ' ``' | ~(' `' |' \\ ' ))* ' `' ;
350360fragment EXPONENT_NUM_PART : ' E' [-+]? DEC_DIGIT +;
351361fragment ID_LITERAL_FRAG : [A -Z_0 -9a-z]*?[A -Z_a-z]+?[A -Z_0 -9a-z]*;
Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ sqlStatements
1414
1515sqlStatement
1616 : ddlStatement | dmlStatement | describeStatement | explainStatement | useStatement | showStatememt
17- | loadStatement | unloadStatememt | setStatememt | resetStatememt | jarStatememt
17+ | loadStatement | unloadStatememt | setStatememt | resetStatememt | jarStatememt | dtAddStatement
1818 ;
1919
2020emptyStatement
@@ -86,6 +86,15 @@ jarStatememt
8686 : (ADD | REMOVE ) JAR jarFileName
8787 ;
8888
89+ // 数栈平台自研的添加文件语法
90+ dtAddStatement
91+ : ADD JAR WITH FILE_PATH (AS uid)?
92+ | ADD FILE WITH FILE_PATH (AS uid)? (RENAME uid)?
93+ | ADD (PYTHON_FILES | PYTHON_REQUIREMENTS | PYTHON_DEPENDENCIES | PYTHON_JAR | PYTHON_ARCHIVES ) WITH FILE_PATH RENAME uid
94+ | ADD PYTHON_PARAMETER FILE_PATH
95+ | ADD ENGINE FILE WITH FILE_PATH RENAME uid KEY uid
96+ ;
97+
8998// Create statements
9099
91100createTable
Load Diff Large diffs are not rendered by default.
Load Diff Large diffs are not rendered by default.
Original file line number Diff line number Diff line change @@ -241,80 +241,89 @@ JAVA=240
241241SCALA=241
242242PYTHON=242
243243JAR=243
244- CATALOGS=244
245- VIEWS=245
246- JARS=246
247- PRIMARY=247
248- KEY=248
249- PERIOD=249
250- SYSTEM_TIME=250
251- ENFORCED=251
252- METADATA=252
253- VIRTUAL=253
254- STRING=254
255- ARRAY=255
256- MAP=256
257- CHAR=257
258- VARCHAR=258
259- BINARY=259
260- VARBINARY=260
261- BYTES=261
262- DECIMAL=262
263- DEC=263
264- NUMERIC=264
265- TINYINT=265
266- SMALLINT=266
267- INT=267
268- INTEGER=268
269- BIGINT=269
270- FLOAT=270
271- DOUBLE=271
272- DATE=272
273- TIME=273
274- TIMESTAMP=274
275- TIMESTAMP_LTZ=275
276- MULTISET=276
277- BOOLEAN=277
278- RAW=278
279- ROW=279
280- NULL=280
281- DATETIME=281
282- EQUAL_SYMBOL=282
283- GREATER_SYMBOL=283
284- LESS_SYMBOL=284
285- EXCLAMATION_SYMBOL=285
286- BIT_NOT_OP=286
287- BIT_OR_OP=287
288- BIT_AND_OP=288
289- BIT_XOR_OP=289
290- DOT=290
291- LS_BRACKET=291
292- RS_BRACKET=292
293- LR_BRACKET=293
294- RR_BRACKET=294
295- COMMA=295
296- SEMICOLON=296
297- AT_SIGN=297
298- SINGLE_QUOTE_SYMB=298
299- DOUBLE_QUOTE_SYMB=299
300- REVERSE_QUOTE_SYMB=300
301- COLON_SYMB=301
302- ASTERISK_SIGN=302
303- UNDERLINE_SIGN=303
304- HYPNEN_SIGN=304
305- ADD_SIGN=305
306- PENCENT_SIGN=306
307- DOUBLE_VERTICAL_SIGN=307
308- DOUBLE_HYPNEN_SIGN=308
309- SLASH_SIGN=309
310- DOT_ID=310
311- PLUS_DOT_ID=311
312- STRING_LITERAL=312
313- DIG_LITERAL=313
314- REAL_LITERAL=314
315- BIT_STRING=315
316- ID_LITERAL=316
317- PLUS_ID_LITERAL=317
244+ FILE=244
245+ PYTHON_FILES=245
246+ PYTHON_REQUIREMENTS=246
247+ PYTHON_DEPENDENCIES=247
248+ PYTHON_JAR=248
249+ PYTHON_ARCHIVES=249
250+ PYTHON_PARAMETER=250
251+ ENGINE=251
252+ CATALOGS=252
253+ VIEWS=253
254+ JARS=254
255+ PRIMARY=255
256+ KEY=256
257+ PERIOD=257
258+ SYSTEM_TIME=258
259+ ENFORCED=259
260+ METADATA=260
261+ VIRTUAL=261
262+ STRING=262
263+ ARRAY=263
264+ MAP=264
265+ CHAR=265
266+ VARCHAR=266
267+ BINARY=267
268+ VARBINARY=268
269+ BYTES=269
270+ DECIMAL=270
271+ DEC=271
272+ NUMERIC=272
273+ TINYINT=273
274+ SMALLINT=274
275+ INT=275
276+ INTEGER=276
277+ BIGINT=277
278+ FLOAT=278
279+ DOUBLE=279
280+ DATE=280
281+ TIME=281
282+ TIMESTAMP=282
283+ TIMESTAMP_LTZ=283
284+ MULTISET=284
285+ BOOLEAN=285
286+ RAW=286
287+ ROW=287
288+ NULL=288
289+ DATETIME=289
290+ EQUAL_SYMBOL=290
291+ GREATER_SYMBOL=291
292+ LESS_SYMBOL=292
293+ EXCLAMATION_SYMBOL=293
294+ BIT_NOT_OP=294
295+ BIT_OR_OP=295
296+ BIT_AND_OP=296
297+ BIT_XOR_OP=297
298+ DOT=298
299+ LS_BRACKET=299
300+ RS_BRACKET=300
301+ LR_BRACKET=301
302+ RR_BRACKET=302
303+ COMMA=303
304+ SEMICOLON=304
305+ AT_SIGN=305
306+ SINGLE_QUOTE_SYMB=306
307+ DOUBLE_QUOTE_SYMB=307
308+ REVERSE_QUOTE_SYMB=308
309+ COLON_SYMB=309
310+ ASTERISK_SIGN=310
311+ UNDERLINE_SIGN=311
312+ HYPNEN_SIGN=312
313+ ADD_SIGN=313
314+ PENCENT_SIGN=314
315+ DOUBLE_VERTICAL_SIGN=315
316+ DOUBLE_HYPNEN_SIGN=316
317+ SLASH_SIGN=317
318+ DOT_ID=318
319+ PLUS_DOT_ID=319
320+ STRING_LITERAL=320
321+ DIG_LITERAL=321
322+ REAL_LITERAL=322
323+ BIT_STRING=323
324+ ID_LITERAL=324
325+ PLUS_ID_LITERAL=325
326+ FILE_PATH=326
318327'SELECT'=4
319328'FROM'=5
320329'ADD'=6
@@ -555,69 +564,77 @@ PLUS_ID_LITERAL=317
555564'SCALA'=241
556565'PYTHON'=242
557566'JAR'=243
558- 'CATALOGS'=244
559- 'VIEWS'=245
560- 'JARS'=246
561- 'PRIMARY'=247
562- 'KEY'=248
563- 'PERIOD'=249
564- 'SYSTEM_TIME'=250
565- 'ENFORCED'=251
566- 'METADATA'=252
567- 'VIRTUAL'=253
568- 'STRING'=254
569- 'ARRAY'=255
570- 'MAP'=256
571- 'CHAR'=257
572- 'VARCHAR'=258
573- 'BINARY'=259
574- 'VARBINARY'=260
575- 'BYTES'=261
576- 'DECIMAL'=262
577- 'DEC'=263
578- 'NUMERIC'=264
579- 'TINYINT'=265
580- 'SMALLINT'=266
581- 'INT'=267
582- 'INTEGER'=268
583- 'BIGINT'=269
584- 'FLOAT'=270
585- 'DOUBLE'=271
586- 'DATE'=272
587- 'TIME'=273
588- 'TIMESTAMP'=274
589- 'TIMESTAMP_LTZ'=275
590- 'MULTISET'=276
591- 'BOOLEAN'=277
592- 'RAW'=278
593- 'ROW'=279
594- 'NULL'=280
595- 'DATETIME'=281
596- '='=282
597- '>'=283
598- '<'=284
599- '!'=285
600- '~'=286
601- '|'=287
602- '&'=288
603- '^'=289
604- '.'=290
605- '['=291
606- ']'=292
607- '('=293
608- ')'=294
609- ','=295
610- ';'=296
611- '@'=297
612- '\''=298
613- '"'=299
614- '`'=300
615- ':'=301
616- '*'=302
617- '_'=303
618- '-'=304
619- '+'=305
620- '%'=306
621- '||'=307
622- '--'=308
623- '/'=309
567+ 'FILE'=244
568+ 'PYTHON_FILES'=245
569+ 'PYTHON_REQUIREMENTS'=246
570+ 'PYTHON_DEPENDENCIES'=247
571+ 'PYTHON_JAR'=248
572+ 'PYTHON_ARCHIVES'=249
573+ 'PYTHON_PARAMETER'=250
574+ 'ENGINE'=251
575+ 'CATALOGS'=252
576+ 'VIEWS'=253
577+ 'JARS'=254
578+ 'PRIMARY'=255
579+ 'KEY'=256
580+ 'PERIOD'=257
581+ 'SYSTEM_TIME'=258
582+ 'ENFORCED'=259
583+ 'METADATA'=260
584+ 'VIRTUAL'=261
585+ 'STRING'=262
586+ 'ARRAY'=263
587+ 'MAP'=264
588+ 'CHAR'=265
589+ 'VARCHAR'=266
590+ 'BINARY'=267
591+ 'VARBINARY'=268
592+ 'BYTES'=269
593+ 'DECIMAL'=270
594+ 'DEC'=271
595+ 'NUMERIC'=272
596+ 'TINYINT'=273
597+ 'SMALLINT'=274
598+ 'INT'=275
599+ 'INTEGER'=276
600+ 'BIGINT'=277
601+ 'FLOAT'=278
602+ 'DOUBLE'=279
603+ 'DATE'=280
604+ 'TIME'=281
605+ 'TIMESTAMP'=282
606+ 'TIMESTAMP_LTZ'=283
607+ 'MULTISET'=284
608+ 'BOOLEAN'=285
609+ 'RAW'=286
610+ 'ROW'=287
611+ 'NULL'=288
612+ 'DATETIME'=289
613+ '='=290
614+ '>'=291
615+ '<'=292
616+ '!'=293
617+ '~'=294
618+ '|'=295
619+ '&'=296
620+ '^'=297
621+ '.'=298
622+ '['=299
623+ ']'=300
624+ '('=301
625+ ')'=302
626+ ','=303
627+ ';'=304
628+ '@'=305
629+ '\''=306
630+ '"'=307
631+ '`'=308
632+ ':'=309
633+ '*'=310
634+ '_'=311
635+ '-'=312
636+ '+'=313
637+ '%'=314
638+ '||'=315
639+ '--'=316
640+ '/'=317
You can’t perform that action at this time.
0 commit comments