Example #1
0
        public ViewColumn(View view, TObjectName columnObject, int index)
        {
            if (view == null || columnObject == null)
            {
                throw new System.ArgumentException("TableColumn arguments can't be null.");
            }

            id = ++TableColumn.TABLE_COLUMN_ID;

            this.columnObject = columnObject;

            TSourceToken startToken = columnObject.startToken;
            TSourceToken endToken   = columnObject.endToken;

            this.startPosition = new Tuple <long, long>(startToken.lineNo, startToken.columnNo);
            this.endPosition   = new Tuple <long, long>(endToken.lineNo, endToken.columnNo + endToken.astext.Length);

            if (!"".Equals(columnObject.ColumnNameOnly))
            {
                this.name = columnObject.ColumnNameOnly;
            }
            else
            {
                this.name = columnObject.ToString();
            }

            this.view        = view;
            this.columnIndex = index;
            view.addColumn(this);
        }
Example #2
0
        public TableColumn(Table table, TObjectName columnObject)
        {
            if (table == null || columnObject == null)
            {
                throw new System.ArgumentException("TableColumn arguments can't be null.");
            }

            id = ++TABLE_COLUMN_ID;

            this.columnObject = columnObject;

            TSourceToken startToken = columnObject.startToken;
            TSourceToken endToken   = columnObject.endToken;

            this.startPosition = new Tuple <long, long>(startToken.lineNo, startToken.columnNo);
            this.endPosition   = new Tuple <long, long>(endToken.lineNo, endToken.columnNo + endToken.astext.Length);

            if (columnObject.ColumnNameOnly != null && !"".Equals(columnObject.ColumnNameOnly))
            {
                this.name = columnObject.ColumnNameOnly;
            }
            else
            {
                this.name = columnObject.ToString();
            }

            this.table = table;
            table.addColumn(this);
        }
Example #3
0
        public TableColumn(Table table, TConstant columnObject, int columnIndex)
        {
            if (table == null || columnObject == null)
            {
                throw new System.ArgumentException("TableColumn arguments can't be null.");
            }

            id = ++TABLE_COLUMN_ID;

            TSourceToken startToken = columnObject.startToken;
            TSourceToken endToken   = columnObject.endToken;

            this.startPosition = new Tuple <long, long>(startToken.lineNo, startToken.columnNo);
            this.endPosition   = new Tuple <long, long>(endToken.lineNo, endToken.columnNo + endToken.astext.Length);

            this.name = "DUMMY" + columnIndex;

            this.table = table;
            table.addColumn(this);
        }
Example #4
0
        public ResultColumn(ResultSet resultSet, TParseTreeNode columnObject)
        {
            if (columnObject == null || resultSet == null)
            {
                throw new System.ArgumentException("ResultColumn arguments can't be null.");
            }

            id = ++TableColumn.TABLE_COLUMN_ID;

            this.resultSet = resultSet;
            resultSet.addColumn(this);

            this.columnObject = columnObject;

            TSourceToken startToken = columnObject.startToken;
            TSourceToken endToken   = columnObject.endToken;

            if (columnObject is TObjectName)
            {
                if (((TObjectName)columnObject).ColumnNameOnly != null && !"".Equals(((TObjectName)columnObject).ColumnNameOnly))
                {
                    this.name = ((TObjectName)columnObject).ColumnNameOnly;
                }
                else
                {
                    this.name = ((TObjectName)columnObject).ToString();
                }
            }
            else
            {
                this.name = columnObject.ToString();
            }

            this.fullName = columnObject.ToString();

            this.startPosition = new Tuple <long, long>(startToken.lineNo, startToken.columnNo);
            this.endPosition   = new Tuple <long, long>(endToken.lineNo, endToken.columnNo + endToken.astext.Length);
        }
Example #5
0
        public ResultColumn(SelectResultSet resultSet, Tuple <TResultColumn, TObjectName> starColumnPair)
        {
            if (starColumnPair == null || resultSet == null)
            {
                throw new System.ArgumentException("ResultColumn arguments can't be null.");
            }

            id = ++TableColumn.TABLE_COLUMN_ID;

            this.resultSet = resultSet;
            resultSet.addColumn(this);

            this.columnObject = starColumnPair.Item1;

            TSourceToken startToken = columnObject.startToken;
            TSourceToken endToken   = columnObject.endToken;

            this.name     = ((TObjectName)columnObject).ColumnNameOnly;
            this.fullName = columnObject.ToString();

            this.startPosition = new Tuple <long, long>(startToken.lineNo, startToken.columnNo);
            this.endPosition   = new Tuple <long, long>(endToken.lineNo, endToken.columnNo + endToken.astext.Length);
        }
Example #6
0
        public ResultColumn(ResultSet resultSet, TResultColumn resultColumnObject)
        {
            if (resultColumnObject == null || resultSet == null)
            {
                throw new System.ArgumentException("ResultColumn arguments can't be null.");
            }

            id = ++TableColumn.TABLE_COLUMN_ID;

            this.resultSet = resultSet;
            resultSet.addColumn(this);

            this.columnObject = resultColumnObject;

            if (resultColumnObject.AliasClause != null)
            {
                this.alias = resultColumnObject.AliasClause.ToString();
                TSourceToken aliasStartToken = resultColumnObject.AliasClause.startToken;
                TSourceToken aliasEndToken   = resultColumnObject.AliasClause.endToken;
                this.aliasStartPosition = new Tuple <long, long>(aliasStartToken.lineNo, aliasStartToken.columnNo);
                this.aliasEndPosition   = new Tuple <long, long>(aliasEndToken.lineNo, aliasEndToken.columnNo + aliasEndToken.astext.Length);

                this.name = this.alias;
            }
            else
            {
                if (resultColumnObject.Expr.ExpressionType == EExpressionType.simple_constant_t)
                {
                    this.name = resultColumnObject.ToString();
                }
                else if (resultColumnObject.Expr.ExpressionType == EExpressionType.sqlserver_proprietary_column_alias_t)
                {
                    TSourceToken startToken1 = resultColumnObject.Expr
                                               .LeftOperand
                                               .startToken;
                    TSourceToken endToken1 = resultColumnObject.Expr
                                             .LeftOperand
                                             .endToken;
                    this.alias = resultColumnObject.Expr
                                 .LeftOperand
                                 .ToString();
                    this.aliasStartPosition = new Tuple <long, long>(startToken1.lineNo,
                                                                     startToken1.columnNo);
                    this.aliasEndPosition = new Tuple <long, long>(endToken1.lineNo,
                                                                   endToken1.columnNo + endToken1.astext.Length);

                    this.name = this.alias;
                }
                else if (resultColumnObject.Expr.ExpressionType == EExpressionType.function_t)
                {
                    this.name = resultColumnObject.Expr
                                .FunctionCall
                                .FunctionName
                                .ToString();
                }
                else if (resultColumnObject.ColumnNameOnly != null &&
                         !"".Equals(resultColumnObject.ColumnNameOnly))
                {
                    this.name = resultColumnObject.ColumnNameOnly;
                }
                else
                {
                    this.name = resultColumnObject.ToString();
                }
            }

            if (resultColumnObject.Expr.ExpressionType == EExpressionType.function_t)
            {
                this.fullName = resultColumnObject.Expr
                                .FunctionCall
                                .FunctionName
                                .ToString();
            }
            else
            {
                this.fullName = resultColumnObject.ToString();
            }

            TSourceToken startToken = resultColumnObject.startToken;
            TSourceToken endToken   = resultColumnObject.endToken;

            this.startPosition = new Tuple <long, long>(startToken.lineNo, startToken.columnNo);
            this.endPosition   = new Tuple <long, long>(endToken.lineNo, endToken.columnNo + endToken.astext.Length);
        }