【发布时间】:2014-08-28 15:49:02
【问题描述】:
我在这个问题上遇到了难题,我似乎无法找到或解决问题所在或找到问题的答案......我对查询 Active Directory 完全陌生,所以我我希望当我指出解决方案时,我没有做任何值得拍脑门的事情!
因此,我已将图像上传到 thumbnailPhoto 和 jpegPhoto 中,并且我可以在 ADSI Edit 中看到它们确实具有价值。
我已经在我们的 2008 R2 数据库服务器上设置了一个链接服务器(名为 ActiveDirectory),我可以成功地查询它并返回结果。如果我运行下面的查询,它会返回正确的值,但是一旦我取消注释 jpegPhoto 行(在下面的代码中注释掉),我就会收到错误...
无法从链接服务器“ActiveDirectory”的 OLE DB 提供程序“ADSDSOObject”获取行的数据。由于符号不匹配或溢出以外的原因,无法转换数据值。
如果 jpegPhoto 的内容从未填充到返回的结果集中,则查询会正确运行且未注释 jpegPhoto。
SELECT
objectGUID
,cn
,thumbnailPhoto
-- ,jpegPhoto
FROM OpenQuery (
ActiveDirectory,
'SELECT
objectGUID
,cn
,thumbnailPhoto
,jpegPhoto
FROM ''LDAP://XXXXX/OU=XXXXX,DC=XXXXX,DC=XXXXX,DC=com''
') AS AD
WHERE cn = 'username'
结果可以从 OpenQuery 返回,这对我来说似乎很奇怪(我尝试过 OpenRowset 无济于事),它似乎在这之外失败了。
我也尝试过各种 CAST 和 CONVERT,但我现在不知道如何才能在查询中实际返回该字段的内容(我只是尝试在 SQL Server 管理中运行)工作室。
有人遇到过这个问题并解决了吗?
我当然希望如此!
提前致谢!!
甘农
【问题讨论】:
-
你有没有想过这个问题?我遇到了同样的问题。
标签: sql sql-server-2008-r2 active-directory ssms ldap-query