001package gudusoft.gsqlparser.nodes;
002
003import gudusoft.gsqlparser.nodes.mssql.TOptionClause;
004import gudusoft.gsqlparser.nodes.oracle.TErrorLoggingClause;
005
006/*
007* Date: 2010-6-18
008* Time: 14:52:11
009*/
010public class TMergeSqlNode extends TParseTreeNode {
011
012    private TErrorLoggingClause errorLoggingClause;
013
014    public void setErrorLoggingClause(TErrorLoggingClause errorLoggingClause) {
015        this.errorLoggingClause = errorLoggingClause;
016    }
017
018    public TErrorLoggingClause getErrorLoggingClause() {
019
020        return errorLoggingClause;
021    }
022
023    private TOutputClause outputClause = null;
024
025    public void setOutputClause(TOutputClause outputClause) {
026        this.outputClause = outputClause;
027    }
028
029    public TOutputClause getOutputClause() {
030
031        return outputClause;
032    }
033
034    /**
035     * sql server option clause
036     * @see gudusoft.gsqlparser.nodes.mssql.TOptionClause
037     */
038    private TOptionClause optionClause;
039
040    public void setOptionClause(TOptionClause optionClause) {
041        this.optionClause = optionClause;
042    }
043
044    public TOptionClause getOptionClause() {
045
046        return optionClause;
047    }
048
049    private TFromTable targetTable = null;
050    private TFromTable usingTable = null;
051    private  TExpression condition = null;
052
053    private  TObjectNameList columnList = null;
054
055    public TCTEList cteList = null;
056
057    public TObjectNameList getColumnList() {
058        return columnList;
059    }
060
061    public void setColumnList(TObjectNameList columnList) {
062
063        this.columnList = columnList;
064    }
065
066    private TPTNodeList <TMergeWhenClause> whenClauses;
067
068    public TPTNodeList<TMergeWhenClause> getWhenClauses() {
069        return whenClauses;
070    }
071
072    public void setWhenClauses(TPTNodeList<TMergeWhenClause> whenClauses) {
073        this.whenClauses = whenClauses;
074    }
075
076
077    public TFromTable getTargetTable() {
078        return targetTable;
079    }
080
081    public TFromTable getUsingTable() {
082        return usingTable;
083    }
084
085    public TExpression getCondition() {
086        return condition;
087    }
088
089    public void init(Object arg1,Object arg2,Object arg3)
090    {
091     this.targetTable = (TFromTable)arg1;
092     this.usingTable = (TFromTable)arg2;
093     this.condition = (TExpression)arg3;
094    }
095
096    private TLimitClause limitClause;
097
098    public void setLimitClause(TLimitClause limitClause) {
099        this.limitClause = limitClause;
100    }
101
102    public TLimitClause getLimitClause() {
103
104        return limitClause;
105    }
106
107    private TReturningClause returningClause;
108
109    public void setReturningClause(TReturningClause returningClause) {
110        this.returningClause = returningClause;
111    }
112
113    public TReturningClause getReturningClause() {
114
115        return returningClause;
116    }
117}