tipos salida procedimientos procedimiento parametros ejemplos ejecutar developer con bloques almacenado sql oracle11g

sql - salida - procedure oracle ejemplos



¿A qué se refiere `x` en esta declaración SQL de Oracle:` select*from dual donde x=1 o 1=1` (1)

Parece suceder porque en algunas versiones de Oracle DB existen sinónimos llamados X e Y:

select owner, synonym_name, table_owner, table_name from dba_synonyms where synonym_name in (''X'', ''Y''); OWNER SYNONYM_NAME TABLE_OWNER TABLE_NAME ------------------------------ ------------------------------ ------------------------------ ---------- PUBLIC X MDSYS OGC_X PUBLIC Y MDSYS OGC_Y

Accidentalmente encontré que en Oracle SQL se puede emitir la siguiente declaración: select * from dual where x=1 or 1=1 .

  1. La columna en dual se llama dummy y no x .
  2. Si selecciono de cualquier otra tabla, todavía funciona, devolviendo todas las filas.
  3. select * from dual where y=1 or 1=1 también funciona.
  4. select * from dual where z=1 or 1=1 no funciona , dando ORA-00904: z: invalid identifier .
  5. select * from dual where x=1 no funciona , dando ORA-06553: PLS-306: wrong number or types of arguments in call to ''OGC_X'' .

¿A qué se refieren y ?