Как использовать БУЛЕВ тип в операторе SELECT

Этот - stumper. Вы находитесь в праве среды Active Directory? Просто проверка:)

Во всяком случае, вместо того, чтобы связать с sid. Значение,

string str = "LDAP://";

я попытался бы преобразовать массив байтов SID в Строка Октета и связал бы с этим вместо этого.

существует сладкий пример здесь на странице 78. Это получит Вас ближе. Честно говоря, я не попытался связать с SID прежде. Но у меня была привязка успеха с GUID пользователя, хотя :)

Удача и сообщила мне, как это идет.

54
задан AHiggins 2 December 2015 в 07:21
поделиться

5 ответов

Вы можете создать функцию-оболочку следующим образом:

function get_something(name in varchar2,
                   ignore_notfound in varchar2) return varchar2
is
begin
    return get_something (name, (upper(ignore_notfound) = 'TRUE') );
end;

затем вызовите:

select get_something('NAME', 'TRUE') from dual;

Вам решать, какие допустимые значения ignore_notfound будут в вашей версии, я предположил, что «ИСТИНА» означает ИСТИНА, а все остальное - ЛОЖЬ.

28
ответ дан 7 November 2019 в 07:59
поделиться

Из документации :

Вы не можете вставить значения TRUE и FALSE в столбец базы данных. Вы не можете выбрать или получить значения столбца в BOOLEAN переменную. Функции, вызываемые из запроса SQL , не могут принимать никаких параметров BOOLEAN . Также нет встроенных функций SQL , таких как TO_CHAR ; для представления значений BOOLEAN на выходе необходимо использовать конструкции IF-THEN или CASE для преобразования значений BOOLEAN в какой-либо другой тип, например как 0 или 1 , 'Y' или 'N' , 'true' или «ложь» и так далее.

20
ответ дан 7 November 2019 в 07:59
поделиться

Тип данных BOOLEAN - это данные PL / SQL. тип. Oracle не предоставляет эквивалентный тип данных SQL (...) вы можете создать функцию-оболочку, которая отображает Тип SQL к типу BOOLEAN.

Проверьте это: http://forums.datadirect.com/ddforums/thread.jspa?threadID=1771&tstart=0&messageID=5284

5
ответ дан 7 November 2019 в 07:59
поделиться

Как насчет использования выражения, которое принимает значение ИСТИНА (или ЛОЖЬ)?

select get_something('NAME', 1 = 1) from dual
-2
ответ дан 7 November 2019 в 07:59
поделиться

PL / SQL жалуется, что TRUE не является допустимым идентификатором или переменной. Задайте локальную переменную, установите для нее значение TRUE и передайте ее в функцию get_something.

-4
ответ дан 7 November 2019 в 07:59
поделиться
Другие вопросы по тегам:

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