如何解决每次在不同的服务器上运行脚本时,是否会使用不同的占位符名称生成未命名的约束?
我有一个未命名的数据库,或者它的某些约束似乎是随机生成的名称。
名称如:\n
当我们向客户端提供涉及数据库更改的新版本应用程序时,我们会将 Visual Studio 的数据库项目功能生成的脚本提供给客户端。
这次我们收到了错误报告,例如 DF___MyTable_Busin_CompE_139BEED8
当我检查我们提供的脚本时,它会在添加新的默认值之前删除约束。
所以我想知道这些约束是否在不同的服务器上以不同的名称生成,然后当脚本删除现有的默认约束时,它会尝试删除不存在的约束,然后在尝试删除时再次失败向字段添加新的默认约束?
我更像一个 C# 人,而不是一个 sql 人,不确定这些东西是如何工作的。
解决方法
你的想法是正确的。您不能依赖生成的约束名称。
如果您要删除并重新创建约束,则不能保证在两个系统上或什至在同一系统上生成的约束名称相同。您应该始终尝试使用命名约束。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。