The restrict implicit binary conversion mode (CONVERSION_MODE set to 1) applies to all aspects of queries in general.
This query:
SELECT COUNT(*) FROM T1 WHERE cvb IN (SELECT csi FROM T2)
fails with the message:
"Invalid data type comparison in predicate (t1.cvb IN (SELECT t1.csi ...)), [-1001013] ['QFA13']"
This query:
SELECT ASCII(cvb) FROM t1 WHERE c1=1
fails with the message:
"Data exception - data type conversion is not possible. Argument to ASCII must be string, [-1009145] ['QFA2E']"
This query:
SELECT STRING(cvb, cvc) FROM t1 WHERE c1=1where the column cvb is defined as VARBINARY and the column cvc is defined as VARCHAR, fails.
with the message:
"Data exception - data type conversion is not possible. Arguments to STRING must be all binary or all string, [-1009145] ['QFA2E']"
When CONVERSION_MODE = 1, the restriction applies to these operators used in arithmetic operations:
+, -, *, /
The restriction applies to these bitwise operators used in bitwise expressions:
& (AND), | (OR), ^ (XOR)
This query:
SELECT ROUND(4.4, cvb) FROM t1 WHERE C1=1
fails with the message:
"Data exception - data type conversion is not possible. Second Argument to ROUND cannot be converted into an integer, [-1009145] ['QFA2E']"
This query:
SELECT ARGN(cvb, csi, cti) FROM t1 WHERE c1=1
fails with the message:
"Data exception - data type conversion is not possible. First Argument to ARGN cannot be converted to an integer, [-1009145] ['QFA2E']"