在SQL Server 2008上通过OpenQuery在视图中进行参数化ADSI查询

时间:2013-07-16 16:39:57

标签: sql-server-2008 adsi openquery

我有一个视图,其中一列包含domain \ useraccount作为nvarchar(100)。我需要将此列中的值从domain \ useraccount转换为Last,First Middle。我已成功创建了一个链接服务器(ADSI),并可以通过OpenQuery调用将硬编码的帐户名解析为实际名称。

但是,从视图中进行OpenQuery调用是不可能的。我尝试过以下选项:

  1. 在OpenQuery调用中使用字符串替换/连接。
  2. 创建一个包装OpenQuery调用的函数,并从视图中调用该函数。
  3. 以上两种选项均无效。 #1失败,因为OpenQuery只接受预先形成的字符串作为参数,并且不可能在视图中创建一个(据我所知)。 #2失败,因为根据我在尝试时收到的错误消息,从视图调用的函数本身可以包含对EXEC(字符串)的调用。 #2实际上是每篇知识库文章官方解决方法的变体:

    http://support.microsoft.com/kb/314520

    有人可以对此有所了解吗?几乎看起来似乎无法在视图中进行参数化的OpenQuery调用。

    谢谢!

0 个答案:

没有答案