sql-server - 将字符串转换为 SSRS 订阅的唯一标识符时遇到问题
问题描述
我们有一个离开公司的 DBA。那个 DBA 创建了一堆 SSRS 订阅,当他们的 Active Directory 帐户被关闭时,所有订阅都失败了。我正在与 IT 部门合作创建一个通用的活动目录帐户,用于管理所有订阅,这样就不会再发生这种情况。然而,有一些政治因素正在发生,所以与此同时,我需要更改这些订阅属于谁,这样报告才能继续生成。我正在运行此代码:
DECLARE @OldUserID uniqueidentifier
DECLARE @NewUserID uniqueidentifier
SELECT @OldUserID = CAST( UserID as UNIQUEIDENTIFIER) FROM dbo.Users WHERE UserID ='Domain\First.Last'
SELECT @NewUserID= CAST( UserID as UNIQUEIDENTIFIER) FROM dbo.Users WHERE UserName = 'Domain\NewFirst.NewLast'
UPDATE dbo.Subscriptions SET OwnerID = @NewUserID WHERE OwnerID = @OldUserID
除了我得到错误
“消息 8169,级别 16,状态 2,第 8 行从字符串转换为唯一标识符时转换失败。”</p>
所以我拿出单引号并尝试了这个:
DECLARE @OldUserID uniqueidentifier
DECLARE @NewUserID uniqueidentifier
SELECT @OldUserID = CAST( UserID as UNIQUEIDENTIFIER) FROM dbo.Users WHERE UserID = Domain\First.Last
SELECT @NewUserID= CAST( UserID as UNIQUEIDENTIFIER) FROM dbo.Users WHERE UserName = Domain\NewFirst.NewLast
UPDATE dbo.Subscriptions SET OwnerID = @NewUserID WHERE OwnerID = @OldUserID
我得到了错误:
“消息 102,级别 15,状态 1,第 3 行不正确
'\' 附近的语法。消息 102,级别 15,状态 1,第 4 行 '\' 附近的语法错误。”</p>
当我用谷歌搜索我的问题时,我似乎找不到答案,所以我认为这是我想念的非常简单的事情。如有任何帮助,我将不胜感激,以便让这些订阅恢复并运行。
解决方案
推荐阅读
- python - 我正在尝试下载 Django-heroku。但我收到此错误:找不到 pg_config 可执行文件。,如何解决?
- asp.net-core - 将 EF Core 对象属性设为私有后为空
- visual-studio-code - VSCode自定义字体连字,将两个符号显示为一个?
- nunit - 特性分支上的 Azure 数据工厂 ADF 单元测试,无需将更改部署到数据工厂实例
- javascript - 在不同的 Vuex 模块中提交突变
- html - 使用 CSS 删除第二次出现的选择结果
- php - 在通过模拟定义期望时,PHPUnit 将测试标记为有风险
- asp.net-core - AspnetCore 3.1 OpenIdConnectEvent 使用来自 ClaimActions.MapJsonKey 的声明
- html - 使最后一行有更多列,但与前一行的宽度相同
- excel - 试图循环导入函数