001package gudusoft.gsqlparser.stmt; 002 003 004import gudusoft.gsqlparser.EDbObjectType; 005import gudusoft.gsqlparser.EDbVendor; 006import gudusoft.gsqlparser.ESqlStatementType; 007import gudusoft.gsqlparser.TCustomSqlStatement; 008import gudusoft.gsqlparser.nodes.TDummy; 009import gudusoft.gsqlparser.nodes.TObjectName; 010import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 011 012public class TDropTriggerSqlStatement extends TCustomSqlStatement { 013 014 private boolean ifExists = false; 015 016 public boolean isIfExists() { 017 return ifExists; 018 } 019 020 private TObjectName tableName; 021 022 public TObjectName getTableName() { 023 return tableName; 024 } 025 026 public TObjectName getTriggerName() { 027 return triggerName; 028 } 029 030 private TObjectName triggerName; 031 032 public TDropTriggerSqlStatement(EDbVendor dbvendor) { 033 super(dbvendor); 034 sqlstatementtype = ESqlStatementType.sstdroptrigger; 035 } 036 037 public int doParseStatement(TCustomSqlStatement psql) { 038 if (rootNode == null) return -1; 039 super.doParseStatement(psql); 040 TDummy dummy = (TDummy)rootNode; 041 this.triggerName = (TObjectName) dummy.node1; 042 this.triggerName.setDbObjectType(EDbObjectType.trigger); 043 if (dummy.node2 != null){ 044 this.tableName = (TObjectName)dummy.node2; 045 } 046 this.ifExists = dummy.ifExists; 047 048 return 0; 049 } 050 public void accept(TParseTreeVisitor v){ 051 v.preVisit(this); 052 053 v.postVisit(this); 054 } 055 056 public void acceptChildren(TParseTreeVisitor v){ 057 v.preVisit(this); 058 059 v.postVisit(this); 060 } 061}