sql - 有没有一种简单的方法可以将自定义迁移脚本添加到 SQL 比较脚本中?

标签 sql migration redgate

在我的工作中,我们目前在跨环境插入数据库更改时遇到了一些严重的问题。当我们在现有表上创建新的不可空列时,问题开始出现。 SQL Compare 生成的脚本将列创建为不可空,因此它总是会失败。我希望有一些替代方法来手动编辑脚本。有什么办法可以解决这个问题吗?如果没有,你们如何处理?

最佳答案

创建表:

create table #bingo ( id int )

添加一个值:

insert into #bingo values (1)

添加新列:

alter table #bingo add userid int

填充新列:

update #bingo set userid = 1 where id = 1

将新列更改为不可为空:

alter table #bingo alter column userid int not null

您必须手动编辑 RedGate Sql Compare 才能使其像这样工作。

关于sql - 有没有一种简单的方法可以将自定义迁移脚本添加到 SQL 比较脚本中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/864107/

相关文章:

mysql - 在 MySQL 查询中插入多行的串联值作为新行

mysql合并两个表的数据

database - RedGate ReadyRoll MySQL 支持吗?

c# - ServiceStack.Ormlite.MySql SqlJoinBuilder 无效转换异常

sql - 在 SQL Server 中创建索引时收到警告消息

c# - 将自定义 .NET ORM 迁移到 Entity Frame/Dapper

php - 跟踪数据库架构更改的机制

AngularJS 1 到 Angular 2 升级攻略

sql-server - 通过 Octopus 和 TeamCity 将数据库包部署到 SQL Server

ssms - 升级了 SSMS,现在缺少 Redgate 工具