Kbase 18970: Error 1457 using unknown value (?) in range match
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/15/2008 |
|
Status: Verified
FACT(s) (Environment):
Oracle DataServer
Progress 8.x
Progress 9.x
SYMPTOM(s):
Error 1457 using unknown value (?) in range match
Illegal operator for unknown value or zero-length character string (1457)
CAUSE:
The ORACLE RDBMS does not support the concept of unknown values (represented as ?) as it applies to a Progress database.
The ORACLE DataServer, however, will enable you to insert a NULL value into a field in an ORACLE database by using the following Progress 4GL:
assign field = ?.
This will cause the ORACLE field to be assigned a NULL value.
It is important to understand that in ORACLE, a NULL value is not a value that can be used in a query that does range matching.
For example, since it is not valid to query for something > NULL with an Oracle-supported tool/language, it is not valid to query for > ? in the 4GL when running against an ORACLE database.
FIX:
The only valid operator with unknown values is the equality operator by itself (=).