Получение пользовательских данных из Active Directory с использованием PL / SQL - PullRequest
2 голосов
/ 18 мая 2010

Сегодня я обсуждал процедуру Oracle, которую написал некоторое время назад.

Я хотел получить 7500 адресов электронной почты пользователей из Active Directory, используя PL / SQL. AD вернет максимум 1000 строк, и поставщик LDAP, используемый Oracle, не будет поддерживать подкачку страниц.

Поэтому мое решение было отфильтровать по последним двум символам sAMAccountName (* 00, * 01, * 02 ... и т. Д.). Это приводит к 126 запросам (100 для имен учетных записей, заканчивающихся цифрами, 26 для имен, заканчивающихся буквой ... этого было достаточно для моей настройки AD).

Человек, с которым я разговаривал (кстати, это было собеседование), сказал, что мог бы сделать это лучше, но не сказал бы мне, что это за метод.

Может ли кто-нибудь рискнуть догадаться, что это за метод?

Ответы [ 2 ]

1 голос
/ 23 мая 2010

Действительно тривиально, как вопрос собеседования, я не знаю, какие навыки они требовали, но, на мой взгляд, это странный вопрос «Oracle», потому что он требует детального знания Microsoft AD, но не конкретного PL / Знание SQL.

Вы, вероятно, должны были сказать, чтобы использовать поиск диапазона атрибутов. Здесь это объясняется http://msdn.microsoft.com/en-us/library/Aa772308

0 голосов
/ 18 мая 2010

Если набор результатов отсортирован по имени, вы можете просто запросить следующие 1.000 с именем, большим, чем последнее. И повторяйте это, пока не получите результат менее 1.000 или не более.

...