Compare CHAR and VARVHAR32 variables for equality : CHAR « PL SQL Data Types « Oracle PL/SQL Tutorial






SQL>
SQL> SET SERVEROUTPUT ON
SQL> SET ECHO ON
SQL> DECLARE
  2    employee_name_c CHAR(32);
  3    employee_name_v VARCHAR2(32);
  4  BEGIN
  5    --Assign the same value to each string.
  6    employee_name_c := 'CHAR';
  7    employee_name_v := 'VARCHAR';
  8
  9    --Test the strings for equality.
 10    IF employee_name_c = employee_name_v THEN
 11      DBMS_OUTPUT.PUT_LINE('The names are the same');
 12    ELSE
 13      DBMS_OUTPUT.PUT_LINE('The names are NOT the same');
 14    END IF;
 15  END;
 16  /
The names are NOT the same

PL/SQL procedure successfully completed.

SQL>
SQL>








21.2.CHAR
21.2.1.CHAR
21.2.2.CHAR type variable
21.2.3.Compare CHAR and VARVHAR32 variables for equality
21.2.4.Constants are compared using blank-padded comparison semantics, so the trailing spaces won't affect the result.
21.2.5.Fixed length strings are compared with blank-padded comparison semantic
21.2.6.Compare fixed length string and a literal
21.2.7.Compare char against varchar, and the trailing spaces do matter.
21.2.8.Assigning an empty string to the character variable is exactly the same as assigning NULL to it.