Esempio n. 1
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginCreate(DBSchemaTypes.ForeignKey, string.Empty, this.Name, string.Empty, false);


            BuildColumnListStatement(builder, this.TableColumns);

            builder.BeginReferences(this.ReferenceOwner, this.ReferenceName);

            BuildColumnListStatement(builder, this.ReferenceColumns);

            builder.EndReferences(this.ReferenceOwner, this.ReferenceName);

            if (this.OnDeleteAction != DBFKAction.Undefined || this.OnUpdateAction != DBFKAction.Undefined)
            {
                builder.BeginForeignKeyUpdateActions();

                if (this.OnDeleteAction != DBFKAction.Undefined)
                {
                    builder.WriteDeleteAction(this.OnDeleteAction);
                }
                if (this.OnUpdateAction != DBFKAction.Undefined)
                {
                    builder.WriteUpdateAction(this.OnUpdateAction);
                }

                builder.EndForeignKeyUpdateActions();
            }

            builder.EndCreate(DBSchemaTypes.ForeignKey, false);
            return(true);
        }
Esempio n. 2
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginDropStatement(DBSchemaTypes.View, this.ViewOwner, this.ViewName, this.CheckExists == DBExistState.Exists);
            builder.EndDrop(DBSchemaTypes.View, this.CheckExists == DBExistState.Exists);

            return(true);
        }
Esempio n. 3
0
        // no statement building
#else
        public bool BuildStatement(DBStatementBuilder builder, bool newline, bool indent)
        {
            bool outputseparator = false;
            int  count           = 0;

            foreach (DBParam param in this)
            {
                if (outputseparator)
                {
                    builder.WriteReferenceSeparator();

                    if (newline)
                    {
                        builder.BeginNewLine();
                    }
                }

                outputseparator = param.BuildStatement(builder);

                if (outputseparator)
                {
                    count++;
                }
            }

            return(count > 0);
        }
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginDropStatement(DBSchemaTypes.StoredProcedure, this.SprocOwner, this.SprocName, this.CheckExists == DBExistState.Exists);
            builder.EndDrop(DBSchemaTypes.Table, this.CheckExists == DBExistState.Exists);

            return(true);
        }
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder, bool isInorNot = false)
        {
            builder.BeginDropStatement(DBSchemaTypes.Table, this.TableOwner, this.TableName, this.CheckExists == DBExistState.Exists);
            builder.EndDrop(DBSchemaTypes.Table, this.CheckExists == DBExistState.Exists);

            return(true);
        }
Esempio n. 6
0
        // no statement building
#else
        //
        // SQL Statement builder
        //

        #region public override bool BuildStatement(DBStatementBuilder builder,bool isInorNot=false)

        public override bool BuildStatement(DBStatementBuilder builder, bool isInorNot = false)
        {
            builder.BeginBlock();
            this.GroupItems.BuildStatement(builder);
            builder.EndBlock();
            return(true);
        }
Esempio n. 7
0
        // no statement building
#else
        //
        // SQL Statement
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (string.IsNullOrEmpty(this.Name))
            {
                return(false);
            }
            if (this.Temporary)
            {
                builder.WriteSourceTable(this.Catalog, this.Owner, builder.DatabaseProperties.TemporaryTablePrefix + this.Name, this.Alias);
            }
            else
            {
                builder.WriteSourceTable(this.Catalog, this.Owner, this.Name, this.Alias);
            }

            if (this.HasHints)
            {
                this.Hints.BuildStatement(builder);
            }


            if (this.HasJoins)
            {
                this.Joins.BuildStatement(builder);
            }

            return(true);
        }
Esempio n. 8
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (string.IsNullOrEmpty(this.Owner) == false)
            {
                builder.BeginIdentifier();
                builder.WriteObjectName(this.Owner);
                builder.EndIdentifier();
                builder.AppendIdSeparator();
            }
            builder.BeginIdentifier();
            builder.WriteObjectName(this.SequenceName);
            builder.EndIdentifier();
            builder.AppendIdSeparator();
            builder.BeginFunction(this.KnownFunction, string.Empty);

            builder.BeginFunctionParameterList();
            if (this.HasParameters)
            {
                this.Parameters.BuildStatement(builder);
            }
            builder.EndFunctionParameterList();

            builder.EndFunction(this.KnownFunction, string.Empty);

            return(true);
        }
Esempio n. 9
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginSetStatement();
            this.Assignment.BuildStatement(builder);
            builder.EndSetStatement();
            return(true);
        }
Esempio n. 10
0
        // no statement building
#else
        //
        // SQL Statement builder
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (string.IsNullOrEmpty(this.FunctionName))
            {
                return(false);
            }

            builder.BeginFunction(this.KnownFunction, this.FunctionName);
            builder.BeginFunctionParameterList();

            if (this.HasParameters)
            {
                int index = 0;
                foreach (DBClause p in this.Parameters)
                {
                    builder.BeginFunctionParameter(index);
                    p.BuildStatement(builder);
                    builder.EndFunctionParameter(index);
                    index++;
                }
            }
            builder.EndFunctionParameterList();

            builder.EndFunction(this.KnownFunction, this.FunctionName);

            if (string.IsNullOrEmpty(this.Alias) == false)
            {
                builder.WriteAlias(this.Alias);
            }

            return(true);
        }
Esempio n. 11
0
        // no statement building
#else
        //
        // SQL Statement building
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (null != this.All && this.All.Length > 0)
            {
                builder.BeginBlock();
                bool first = true;
                foreach (DBComparison comp in this.All)
                {
                    if (first)
                    {
                        first = false;
                    }
                    else
                    {
                        builder.WriteOperator(this.Operation);
                    }

                    comp.BuildStatement(builder);
                }

                builder.EndBlock();
                return(true);
            }
            return(false);
        }
Esempio n. 12
0
        // no statement building
#else
        //
        // SQL Statement
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginAssignValue();
            builder.WriteAssignValue(Item, ToValue);
            builder.EndAssignValue();
            return(true);
        }
Esempio n. 13
0
        // no statement building
#else
        //
        // build method(s)
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        /// <summary>
        /// Generates the INSERT statement using the provider specific statement builder
        /// </summary>
        /// <param name="builder">The builder that outputs provider specific statements</param>
        /// <returns>true</returns>
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginInsertStatement();
            if (_into == null)
            {
                throw new NullReferenceException("No table defined to insert into");
            }

            _into.BuildStatement(builder);
            if (this._fields != null && this._fields.Results.Count > 0)
            {
                builder.BeginInsertFieldList();
                _fields.BuildStatement(builder);
                builder.EndInsertFieldList();
            }
            if (_values != null && _values.HasClauses)
            {
                builder.BeginInsertValueList();
                _values.BuildStatement(builder);
                builder.EndInsertValueList();
            }
            else if (_innerselect != null)
            {
                _innerselect.BuildStatement(builder);
            }
            builder.EndInsertStatement();

            return(true);
        }
Esempio n. 14
0
        // no statement building
#else
        //
        // statement build method
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        /// <summary>
        /// Overriden BuildStatement method to construct a valid SQL Update statement using the DBStatementBuilder parameter
        /// </summary>
        /// <param name="builder"></param>
        /// <returns></returns>
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginUpdateStatement();

            if (this._table == null)
            {
                throw new InvalidOperationException("No Source was set on the update statement");
            }

            this._table.BuildStatement(builder);

            if (_assigns == null)
            {
                throw new InvalidOperationException("No Source was set on the update statement");
            }
            this._assigns.BuildStatement(builder);

            if (this._where != null)
            {
                builder.BeginWhereStatement();
                this._where.BuildStatement(builder);
                builder.EndWhereStatement();
            }

            builder.EndUpdateStatement();
            return(true);
        }
Esempio n. 15
0
        // no statement building
#else
        /// <summary>
        /// Overrides the default behaviour to register the parameter
        /// </summary>
        /// <param name="builder"></param>
        /// <returns></returns>
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            this.Name = builder.RegisterParameter(this);

            builder.WriteNativeParameterReference(this.Name);

            return(true);
        }
Esempio n. 16
0
        //No Statement building
#else
        /// <summary>
        /// Writes this use statement to the builder
        /// </summary>
        /// <param name="builder"></param>
        /// <returns></returns>
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginUseStatement();
            builder.BeginIdentifier();
            builder.WriteObjectName(this.DBName);
            builder.EndIdentifier();
            builder.EndUseStatement();
            return(true);
        }
Esempio n. 17
0
        // no statement building
#else
        //
        // SQL Statement builder
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginBlock();
            Left.BuildStatement(builder);
            builder.WriteOperator((Operator)this.Operator);
            Right.BuildStatement(builder);
            builder.EndBlock();
            return(true);
        }
Esempio n. 18
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginCreate(DBSchemaTypes.Sequence, this.Owner, this.SequenceName, string.Empty, this.CheckExists == DBExistState.NotExists);

            if (this.MinValue != DEF_MIN)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.Minimum, this.MinValue);
            }

            if (this.MaxValue != DEF_MAX)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.Maximim, this.MaxValue);
            }

            if (this.StartWithValue != DEF_START)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.StartValue, this.StartWithValue);
            }

            if (this.IncrementValue != DEF_INCREMENT)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.Increment, this.IncrementValue);
            }

            if (this.CacheSize == NO_CACHE_VALUE)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.NoCaching);
            }
            else if (this.CacheSize != DEF_CACHE)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.Cache, this.CacheSize);
            }

            if (this.Cycling == DBSequenceCycling.Cycle)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.Cycling);
            }
            else if (this.Cycling == DBSequenceCycling.NoCycle)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.NoCycling);
            }

            if (this.Order == DBSequenceOrdering.NotOrdered)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.NotOrdered);
            }
            else if (this.Order == DBSequenceOrdering.Ordered)
            {
                builder.WriteSequenceOption(DBSequenceBuilderOption.Ordered);
            }


            builder.EndCreate(DBSchemaTypes.Sequence, this.CheckExists == DBExistState.NotExists);

            return(true);
        }
Esempio n. 19
0
        // no statement building
#else
        /// <summary>
        ///
        /// </summary>
        /// <param name="builder"></param>
        /// <returns></returns>
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginCreate(DBSchemaTypes.PrimaryKey, string.Empty, this.Name, string.Empty, false);

            this.BuildColumnListStatement(builder, this.PKColumns);

            builder.EndCreate(DBSchemaTypes.PrimaryKey, false);

            return(true);
        }
Esempio n. 20
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginReturnsStatement();
            if (null != this.ToReturn)
            {
                this.ToReturn.BuildStatement(builder);
            }
            builder.EndReturnsStatement();
            return(true);
        }
Esempio n. 21
0
        // no statement building
#else
        //
        // SQL Statement builder methods
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (this._results == null || this._results.Count == 0)
            {
                return(false);
            }
            else
            {
                return(this._results.BuildStatement(builder, false, true));
            }
        }
Esempio n. 22
0
        // no statement building
#else
        //
        // SQL Statement builder methods
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (this._grps == null || this._grps.Count == 0)
            {
                return(false);
            }
            else
            {
                return(this._grps.BuildStatement(builder));
            }
        }
Esempio n. 23
0
        // no statement building
#else
        //
        // SQL statement build methods
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (string.IsNullOrEmpty(this.Name))
            {
                return(false);
            }

            builder.WriteSourceField(this.Catalog, this.Owner, this.Table, this.Name, this.Alias);

            return(true);
        }
Esempio n. 24
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder, bool isInorNot = false)
        {
            bool check = (this.CheckExists == DBExistState.NotExists);

            builder.BeginCreate(DBSchemaTypes.View, this.ViewOwner, this.ViewName, string.Empty, check);
            builder.BeginEntityDefinition();
            this.Select.BuildStatement(builder);
            builder.EndEntityDefinition();
            builder.EndCreate(DBSchemaTypes.View, check);
            return(true);
        }
Esempio n. 25
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginIdentifier();
            builder.WriteObjectName(this.Name);
            builder.EndIdentifier();
            builder.WriteSpace();
            builder.WriteColumnDataType(this.Type, this.Length, this.Precision, this.Flags);
            builder.WriteColumnFlags(this.Flags, this.DefaultValue);

            return(true);
        }
Esempio n. 26
0
        // no statement building
#else
        //
        // SQL Statement builder methods
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder, bool isInorNot = false)
        {
            if (this._root != null)
            {
                return(((DBClause)this.Root).BuildStatement(builder));
            }
            else
            {
                return(false);
            }
        }
Esempio n. 27
0
        // no statement building
#else
        //
        // SQL Statement builder methods
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder)
        {
            if (this._clauses != null && this._clauses.Count > 0)
            {
                return(this.Clauses.BuildStatement(builder, false, true));
            }
            else
            {
                return(false);
            }
        }
Esempio n. 28
0
        // no statement building
#else
        public override bool BuildStatement(DBStatementBuilder builder)
        {
            builder.BeginDropStatement(DBSchemaTypes.Index, this.Owner, this.Name, this.CheckExists == DBExistState.Exists);
            if (!string.IsNullOrEmpty(this.TableName))
            {
                builder.BeginReferenceOn();
                builder.WriteSourceTable(this.TableOwner, this.TableName, string.Empty);
                builder.EndReferenceOn();
            }
            builder.EndDrop(DBSchemaTypes.Index, this.CheckExists == DBExistState.Exists);
            return(true);
        }
Esempio n. 29
0
        // no statement building
#else
        #region public override bool BuildStatement(DBStatementBuilder builder)

        /// <summary>
        /// Generates the SQL statement for this DBQueryHint
        /// </summary>
        /// <param name="builder"></param>
        /// <returns></returns>
        public override bool BuildStatement(DBStatementBuilder builder, bool isInorNot = false)
        {
            builder.BeginAQueryHint(this.Option);
            if (null != this.Clause)
            {
                builder.BeginHintParameterList();
                Clause.BuildStatement(builder);
                builder.EndHintParameterList();
            }
            builder.EndAQueryHint(this.Option);
            return(true);
        }
Esempio n. 30
0
        // no statement building
#else
        //
        // SQL Statement builder methods
        //

        #region public override bool BuildStatement(DBStatementBuilder builder)

        public override bool BuildStatement(DBStatementBuilder builder, bool isInorNot = false)
        {
            if (this.TopValue > 0.0)
            {
                builder.WriteTop(this.TopValue, this.StartOffset, this.Type);
                return(true);
            }
            else
            {
                return(false);
            }
        }