кодесурса
«PL / SQL

Упражнения по основам PL / SQL: блок PL / SQL для создания процедуры и вызова ее для оператора AND

script1adsense2code
script1adsense3code

Основы PL / SQL: упражнение 12 с решением

Напишите блок PL / SQL для создания процедуры с использованием «оператора IS [NOT] NULL», а оператор show AND возвращает TRUE, если и только если оба операнда имеют значение TRUE.

Вот процедура:

Код PL / SQL:

CREATE OR REPLACE PROCEDURE pri_bool(
  boo_name   VARCHAR2,
  boo_val    BOOLEAN
) IS
BEGIN
  IF boo_val IS NULL THEN
    DBMS_OUTPUT.PUT_LINE( boo_name || ' = NULL');
  ELSIF boo_val = TRUE THEN
    DBMS_OUTPUT.PUT_LINE( boo_name || ' = TRUE');
  ELSE
    DBMS_OUTPUT.PUT_LINE( boo_name || ' = FALSE');
  END IF;
END;
/

Теперь вызовите процедуру pri_bool:

Код PL / SQL:

DECLARE
  PROCEDURE pri_m_and_n (
    m  BOOLEAN,
    n  BOOLEAN
  ) IS
  BEGIN
   pri_bool ('m', m);
   pri_bool ('n', n);
   pri_bool ('m AND n', m AND n);
 END pri_m_and_n;
 
BEGIN
DBMS_OUTPUT.PUT_LINE('------------- FOR m and n both FALSE ---------------------');
 pri_m_and_n (FALSE, FALSE);
DBMS_OUTPUT.PUT_LINE('------------- FOR m TRUE AND n FALSE ---------------------');
 pri_m_and_n (TRUE, FALSE);
DBMS_OUTPUT.PUT_LINE('------------- FOR m FALSE AND n TRUE ---------------------');
 pri_m_and_n (FALSE, TRUE);
DBMS_OUTPUT.PUT_LINE('------------- FOR m TRUE AND n TRUE ---------------------');
 pri_m_and_n (TRUE, TRUE);
DBMS_OUTPUT.PUT_LINE('------------- FOR m TRUE AND n NULL ---------------------');
 pri_m_and_n (TRUE, NULL);
DBMS_OUTPUT.PUT_LINE('------------- FOR m FALSE AND n NULL---------------------');
 pri_m_and_n (FALSE, NULL);
DBMS_OUTPUT.PUT_LINE('------------- FOR m NULL AND n TRUE ---------------------');
 pri_m_and_n (NULL, TRUE);
DBMS_OUTPUT.PUT_LINE('------------- FOR m NULL AND n FALSE ---------------------');
 pri_m_and_n (NULL, FALSE);
END;
/

Пример вывода:

 ------------- ДЛЯ m и n оба ЛОЖЬ ---------------------
m = ЛОЖЬ
n = ЛОЖЬ
m AND n = ЛОЖЬ
------------- ДЛЯ МЫ ИСТИНА И ЛОЖЬ ---------------------
м = ИСТИНА
n = ЛОЖЬ
m AND n = ЛОЖЬ
------------- ЗА ЛОЖЬ И ИСТИНА ---------------------
m = ЛОЖЬ
n = ИСТИНА
m AND n = ЛОЖЬ
------------- ЗА ИСТИНУ И ИСТИНУ ---------------------
м = ИСТИНА
n = ИСТИНА
m AND n = TRUE
------------- ДЛЯ М ИСТИНА И n НУЛЬ ---------------------
м = ИСТИНА
n = NULL
m AND n = NULL
------------- ЗА ЛОЖЬ И ПУСТОЙ НУЛЬ ---------------------
m = ЛОЖЬ
n = NULL
m AND n = ЛОЖЬ
------------- ДЛЯ НУЛЬ И ИСТИНА ---------------------
m = NULL
n = ИСТИНА
m AND n = NULL
------------- ДЛЯ НУЛЬ И НО ЛОЖЬ ---------------------
m = NULL
n = ЛОЖЬ
m AND n = ЛОЖЬ
Заявление обработано.
0,00 секунд

Блок - схема:

Процедура

«Блок-схема:

Теперь вызовите процедуру pri_bool:

«Блок-схема:

Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите блок PL / SQL, чтобы показать приоритет оператора и круглые скобки в нескольких более сложных выражениях.
Далее: Напишите блок PL / SQL для создания процедуры, используя оператор «IS [NOT] NULL», и оператор show OR возвращает TRUE, если любой из операндов равен TRUE.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code