Exemplo n.º 1
0
 public SqlColumnExpression(SqlColumnDefinition definition)
 {
     Definition = definition;
 }
Exemplo n.º 2
0
 public override void Visit(SqlColumnDefinition codeObject)
 {
 }
Exemplo n.º 3
0
 public SqlColumnForeignKey(SqlColumnDefinition destination, SqlColumnAction onDelete, SqlColumnAction onUpdate)
 {
     Destination = destination;
     OnDelete    = onDelete;
     OnUpdate    = onUpdate;
 }
Exemplo n.º 4
0
        private void AddColumnConstrains(SqlColumnDefinition columnDefinition, Column column)
        {
            switch (columnDefinition.Constraints)
            {
            case null:
                return;
            }

            foreach (var constraint in columnDefinition.Constraints)
            {
                switch (constraint.Type)
                {
                case SqlConstraintType.Identity:
                    var identity = constraint as SqlColumnIdentity;
                    column.Identity = new Column.ColumnIdentity
                    {
                        Increment = identity.Increment ?? 1, Seed = identity.Seed ?? 1
                    };
                    column.NextIdentityValue = column.Identity.Seed;
                    break;

                case SqlConstraintType.NotNull:
                    column.IsNullable = false;
                    break;

                case SqlConstraintType.Null:
                    column.IsNullable = true;
                    break;

                case SqlConstraintType.Default:
                    var defaultConstraint = constraint as SqlDefaultConstraint;

                    switch (defaultConstraint.Expression)
                    {
                    case SqlLiteralExpression expression:
                        column.DefaultValue = expression.Value;
                        break;

                    case SqlBuiltinScalarFunctionCallExpression expression:
                        column.DefaultCallExpression = expression;
                        break;
                    }
                    break;

                case SqlConstraintType.PrimaryKey:
                    column.IsPrimaryKey = true;
                    column.IsUnique     = true;
                    _Table.PrimaryKeys.Add(column);
                    break;

                case SqlConstraintType.ForeignKey:
                    break;

                case SqlConstraintType.Unique:
                    column.IsUnique = true;
                    break;

                    //case SqlConstraintType.RowGuidCol:
                    //case SqlConstraintType.Check:
                }
            }
        }
Exemplo n.º 5
0
 public void SetForeignKey(SqlColumnDefinition fk)
 {
     ForeignKey = fk;
 }