BOOLEAN Data Type
The PL/SQL data type BOOLEAN stores logical values, which are the Boolean values
TRUE and FALSE and the value NULL.
NULL represents an unknown value.
The syntax for declaring an BOOLEAN variable is:
variable_name BOOLEAN
The only value that you can assign to a BOOLEAN variable is a BOOLEAN expression.
Because SQL has no data type equivalent to BOOLEAN, you cannot:
- Assign a BOOLEAN value to a database table column
- Select or fetch the value of a database table column into a BOOLEAN variable
Use a BOOLEAN value in a SQL function
Use a BOOLEAN expression in a SQL statement, except as an argument to a PL/SQL function invoked in a SQL query, or in a PL/SQL anonymous block.
CREATE PROCEDURE p_boolean (b BOOLEAN)
AS
BEGIN
DBMS_OUTPUT.put_line (
CASE
WHEN b IS NULL THEN 'Unknown'
WHEN b THEN 'Yes'
WHEN NOT b THEN 'No'
END
);
END;
/
BEGIN
p_boolean(TRUE);
p_boolean(FALSE);
p_boolean(NULL);
END;
/
Result:
Yes
No
Unknown