001package gudusoft.gsqlparser.stmt; 002 003import gudusoft.gsqlparser.EDbVendor; 004import gudusoft.gsqlparser.ESqlStatementType; 005import gudusoft.gsqlparser.TCustomSqlStatement; 006import gudusoft.gsqlparser.nodes.*; 007 008/** 009 * SHOW LOAD TRANSACTION statement for StarRocks. 010 * 011 * Syntax: 012 * SHOW LOAD TRANSACTION [FROM db_name] [WHERE condition] 013 * 014 * Used to display information about stream load transactions. 015 */ 016public class TShowLoadTransactionStmt extends TCustomSqlStatement { 017 018 // Database name (optional: FROM db_name) 019 private TObjectName databaseName; 020 021 // Filter condition (optional: WHERE condition) 022 private TExpression whereCondition; 023 024 public TShowLoadTransactionStmt(EDbVendor dbvendor) { 025 super(dbvendor); 026 sqlstatementtype = ESqlStatementType.sststarrocksShowLoadTransaction; 027 } 028 029 // Getters 030 public TObjectName getDatabaseName() { 031 return databaseName; 032 } 033 034 public TExpression getWhereCondition() { 035 return whereCondition; 036 } 037 038 @Override 039 public int doParseStatement(TCustomSqlStatement psql) { 040 if (rootNode == null) return -1; 041 super.doParseStatement(psql); 042 043 TShowLoadTransactionSqlNode node = (TShowLoadTransactionSqlNode) rootNode; 044 045 this.databaseName = node.getDatabaseName(); 046 this.whereCondition = node.getWhereCondition(); 047 048 return 0; 049 } 050 051 @Override 052 public void accept(TParseTreeVisitor v) { 053 v.preVisit(this); 054 v.postVisit(this); 055 } 056 057 @Override 058 public void acceptChildren(TParseTreeVisitor v) { 059 v.preVisit(this); 060 v.postVisit(this); 061 } 062}