Каков предел длины строки фильтра LDAP в Active Directory?

Oracle хочет получить столбец, но выдает эту конкретную ошибку, потому что пытается неявно преобразовать значение переменной table_NAME_Id в число. Вы можете увидеть, что если вы измените это значение:

DECLARE
  table_NAME_Id VARCHAR2(100);
  trx_id NUMBER(4);
BEGIN
  table_NAME_Id:='42';

  INSERT INTO TEST_T
  (NAME)
  VALUES
  ('TEST')
  RETURNING table_NAME_Id INTO trx_id;

  dbms_output.put_line('ID: ' || trx_id);
END;
/

ID: 42

PL/SQL procedure successfully completed.

Если переменная установлена ​​на ваше первоначальное значение, она пытается сделать неявное TO_NUMBER('TEST_ID'), которое всегда выдает ORA-01722.

Хотя Разрешение имен PL / SQL означает, что имя столбца имеет приоритет над именем переменной, это не поможет, поскольку нет столбца с именем TABLE_NAME_ID - поэтому он с радостью использует переменную.

Он не может использовать значение переменной вместо имени столбца. Вы должны использовать динамический SQL для предоставления имени столбца во время выполнения (или любого другого идентификатора объекта).

11
задан GEOCHET 10 March 2009 в 02:37
поделиться

3 ответа

По данным Technet: Как Работа Поисков Active Directory, максимальные LDAP запрашивают размер, что сервер пытается обработать значения по умолчанию к 10 485 760 байтам.

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

16
ответ дан 3 December 2019 в 04:53
поделиться

Согласно спецификации в RFC1558, нет жесткого ограничения, наложенного на длину строк фильтра LDAP. Различные реализации могли бы иметь свои собственные пределы все же.

3
ответ дан 3 December 2019 в 04:53
поделиться

Если вы используете графический интерфейс пользователя и групп AD для построения запроса, вы ограничены 464 символами. Если вы используете dsquery из командной строки, вы не ограничены 464 символами. Я не знаю верхних границ длины фильтра в dsquery, но предполагаю, что он соответствует спецификации LDAP.

4
ответ дан 3 December 2019 в 04:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: