示例#1
0
        public override void VisitAlterColumn(AlterColumnCommand cmd)
        {
            if (cmd.NewName.HasValue())
            {
                this.AppendFormat("ALTER TABLE {0} ", cmd.TableName);
                this.AppendFormat("CHANGE COLUMN {0} {1};", cmd.Name, cmd.NewName);
                this.AppendNewLine();
            }

            if (cmd.DbType.HasValue)
            {
                this.AppendFormat("ALTER TABLE {0} ", cmd.TableName);
                this.AppendFormat("MODIFY {0} ", cmd.Name);
                this.VisitDbType(cmd);
                this.Append(";");
                this.AppendNewLine();
            }

            this.ExecuteCommandText(cmd.ConnectionString, builder.ToString());
        }
示例#2
0
        public virtual void VisitAlterColumn(AlterColumnCommand cmd)
        {
            if (cmd.NewName.HasValue())
            {
                this.AppendFormat("EXEC sp_rename '{0}.{1}','{2}';", cmd.TableName, cmd.Name, cmd.NewName);
                this.AppendNewLine();
            }

            if (cmd.DbType.HasValue)
            {
                this.AppendFormat("ALTER TABLE {0} ", cmd.TableName);
                this.AppendFormat("ALTER COLUMN {0} ", cmd.Name);
                this.VisitDbType(cmd);
                this.Append(";");
                this.AppendNewLine();
            }

            if (cmd.Default != null)
            {
                this.AppendFormat("ALTER TABLE {0} ", cmd.TableName);
                this.AppendFormat("ALTER COLUMN {0} SET DEFAULT '{1}'", cmd.Name, cmd.Default);
                this.Append(";");
                this.AppendNewLine();
            }
            if (cmd.IsIdentity.HasValue)
            {
                this.AppendFormat("ALTER TABLE {0} ", cmd.TableName);
                this.AppendFormat("ALTER COLUMN {0} IDENTITY(1,1)", cmd.Name);
                this.Append(";");
                this.AppendNewLine();
            }
            if (cmd.IsNotNull.HasValue)
            {
                this.AppendFormat("ALTER TABLE {0} ", cmd.TableName);
                this.AppendFormat("ALTER COLUMN {0} ", cmd.Name);
                if (cmd.IsNotNull.Value)
                {
                    this.Append("NOT NULL ");
                }
                else
                {
                    this.Append("NULL ");
                }
                this.Append(";");
                this.AppendNewLine();
            }

            this.ExecuteCommandText(cmd.ConnectionString, builder.ToString());
        }