我正在尝试自动化数据库部署过程,我正在使用
SqlPackage.exe
。
我有一些数据库部署过程正在使用这个exe
,但最近我遇到了新数据库的问题。
当我尝试跑步时:
“C:\Program Files (x86)\Microsoft SQL ServerH\DAC in\sqlpackage.exe” /a:Script /op:p_dbprm003.sql /sf:c:\p_dbprm003.dacpac /TargetServerName:servernamexyzw /TargetDatabaseName:p_dbprm003 /配置文件:c:\ p_dbprm003.publish.xml
我收到消息:
无法解析对名称为“[xxx_user ]”的元素的引用。 存在多个同名元素。要解决该错误,您必须添加 一个或多个消歧符。
我真的不知道这是什么意思。
我有一个用户
[xxx_user]
和一个同名的架构 [xxx_user]
。您认为这可能是导致错误的可能原因吗?
您必须将SqlPackage.exe的路径变量设置为系统变量。它解决了我的问题。
对于阅读这篇旧文章的任何人,我今天遇到了同样的问题(Sql server 2017)并找到了解决方案。请注意原始帖子中的错误消息:
无法引用名称为“[xxx_user ]”的元素 解决。存在多个同名元素。为了解决 错误,您必须添加一个或多个消歧符。
请注意,“[xxx_user ]”末尾有一个尾随空格。从您的用户/模式中删除尾随空格,导出您的 .dacpac,问题现在应该得到解决。