001package gudusoft.gsqlparser.stmt; 002 003import gudusoft.gsqlparser.EDbObjectType; 004import gudusoft.gsqlparser.EDbVendor; 005import gudusoft.gsqlparser.ESqlStatementType; 006import gudusoft.gsqlparser.TCustomSqlStatement; 007import gudusoft.gsqlparser.nodes.TObjectName; 008import gudusoft.gsqlparser.nodes.TObjectNameList; 009import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 010import gudusoft.gsqlparser.nodes.TUnsetSqlNode; 011 012public class TUnsetStmt extends TCustomSqlStatement { 013 014 private TObjectName variableName; 015 private TObjectNameList nameList; 016 private EDbObjectType objectType; 017 018 public EDbObjectType getObjectType() { 019 return objectType; 020 } 021 022 public TObjectName getVariableName(){ 023 return variableName; 024 } 025 026 public TObjectNameList getNameList(){ 027 return nameList; 028 } 029 030 public TUnsetStmt(EDbVendor dbvendor) { 031 super(dbvendor); 032 sqlstatementtype = ESqlStatementType.sstunset; 033 } 034 035 public int doParseStatement(TCustomSqlStatement psql) { 036 if (rootNode == null) return -1; 037 super.doParseStatement(psql); 038 TUnsetSqlNode unsetNode = (TUnsetSqlNode)rootNode; 039 objectType = unsetNode.getObjectType(); 040 variableName = unsetNode.getVariableName(); 041 if (variableName != null){ 042 variableName.setDbObjectType(EDbObjectType.variable); 043 } 044 nameList = unsetNode.getNameList(); 045 046 047 return 0; 048 } 049 050 public void accept(TParseTreeVisitor v){ 051 v.preVisit(this); 052 v.postVisit(this); 053 } 054 055 public void acceptChildren(TParseTreeVisitor v){ 056 v.preVisit(this); 057 v.postVisit(this); 058 } 059 060 061}