001package gudusoft.gsqlparser.stmt.redshift;
002
003
004import gudusoft.gsqlparser.EDbVendor;
005import gudusoft.gsqlparser.ESqlStatementType;
006import gudusoft.gsqlparser.TCustomSqlStatement;
007import gudusoft.gsqlparser.nodes.TFetchSqlNode;
008import gudusoft.gsqlparser.nodes.TObjectName;
009import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
010
011public class TFetchFromStmt extends TCustomSqlStatement {
012
013    private TObjectName cursorName;
014
015    public TObjectName getCursorName() {
016        return cursorName;
017    }
018
019    public TFetchFromStmt(EDbVendor dbvendor) {
020        super(dbvendor);
021        sqlstatementtype = ESqlStatementType.sstFetchFrom;
022    }
023
024    public int doParseStatement(TCustomSqlStatement psql) {
025        if (rootNode == null) return -1;
026        super.doParseStatement(psql);
027
028        TFetchSqlNode fetchSqlNode = (TFetchSqlNode)rootNode;
029        cursorName = fetchSqlNode.getCursorName();
030
031        return 0;
032    }
033
034    public void accept(TParseTreeVisitor v){
035        v.preVisit(this);
036        v.postVisit(this);
037    }
038
039    public void acceptChildren(TParseTreeVisitor v){
040        v.preVisit(this);
041        v.postVisit(this);
042    }
043
044    public void setCursorName(TObjectName cursorName) {
045        this.cursorName = cursorName;
046    }
047}