sql - 无法使用 ADSI 从 SQL 查询描述

标签 sql sql-server active-directory adsi

我有一个使用 ADSI 的链接服务器。我可以成功查询除 description 之外的大多数属性。

我的查询:

SELECT * FROM OpenQuery (ADSI,  
    'SELECT description,sn,givenName
    FROM  ''LDAP://mydomain.com/OU=users,DC=com,DC=mydomain'' 
    WHERE title<>''Virtual'' AND (userAccountControl=''66048'' OR 
    userAccountControl=''512'')') 
ORDER BY sn

它抛出此错误:

"Cannot get the data of the row from the OLE DB provider "ADSDSOObject" for linked server "ADSI". Could not convert the data value due to reasons other than sign mismatch or overflow."

这里有什么问题吗?

最佳答案

字段描述是多值的。

看这里:

https://msdn.microsoft.com/en-us/library/ms675492(v=vs.85).aspx

SQL Server 不支持多值字段,因此您无法在查询中获取该字段。

关于sql - 无法使用 ADSI 从 SQL 查询描述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44731735/

相关文章:

vb.net - 无法使用 LDAP (VB.Net) 连接到 AD

sql - 使用 SQL 序数位置表示法的好处?

jquery - 如何查询数据库表中存储为 iCal RRULE 的定期约会?

sql-server - SQL Server - 一列中的情况不同,但第二列中的最后一条记录

SQL Server 查询从字符串中删除最后一个单词

PowerShell Clear-ADAccountExpiration 的执行方式与手动方法不同

mysql - 是否可以在来自 3 个表的 SQL 查询中使用两个 COUNT 和两个 JOIN?

java - 如何在Java中将字符串日期转换为时间戳,格式为dd-MMM-yyyy?

sql - Oracle:检查 dml 语句

javascript - 通过 Azure AD 身份验证进行单点登录 (SSO) 时出错 - AADSTS50059