Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: dbms_ldap
Looks like you're being limited by your ldap server. Ours restricts us to
100 values returned. We have to do the following.
Loop through a table with 36 values. These values consists of all the
letters of the alphabet plus the numbers 0-9. This number or letter is
appended to the first bunch of employeed numbers we are interested in. We
then loop through each of the 36 values 26 times appending a letter of the
alphabet. We then use each one of these as our search against ldap.
Cumbersome and slow and not even guaranteed to bring back less than 100
employees but it's working for now.
Mike
BEGIN
WHILE nCounter < 36 LOOP SELECT item INTO sItem FROM ldap_sequence WHERE count = nCounter;
nCounter2 := 0;
WHILE nCounter2 < 26 lOOP
SELECT item INTO sItem2
FROM ldap_sequence
WHERE count = nCounter2;
sFilter := '';
sFilter := sFilterPrefix||sTierB||sItem||'*)(sn='||sItem2||'*))';
employee_data(sFilter); --make the call to ldapserver
nCounter2 := nCounter2 + 1;
END LOOP; nCounter := nCounter + 1;
END LOOP;
COMMIT;
END tier_b;
-- http://www.freelists.org/webpage/oracle-lReceived on Fri Apr 28 2006 - 08:01:42 CDT