Si un valor de clave de un objeto comercial está en blanco o tiene un valor nulo en la base de datos, utilice el tipo "is null" en lugar del tipo de operador "=" para crear la cláusula WHERE.
IBM recomienda que los objetos comerciales tengan al menos un atributo de clave que no tenga un valor en blanco.
El supuesto siguiente corresponde a un objeto padre con una clave que tiene un valor nulo. Esta situación produce un error en estas condiciones:
Atributo | Tipo |
---|---|
cid | Integer (Key) |
name | String |
comments | String |
El supuesto siguiente corresponde a un objeto padre con dos claves y una de ellas tiene un valor nulo. Esta situación no produce error en estas condiciones:
Atributo | Tipo |
---|---|
cid | Integer (Key) |
name | String |
comments | String |
En el segundo supuesto, cree la consulta de recuperación de datos seleccionando los atributos "cid", "name" y "comments" de "customer", donde cid=1000 y "name" tiene un valor nulo.
El supuesto siguiente corresponde a un objeto padre con un objeto hijo en un objeto contenedor con una referencia de clave foránea. Esta situación produce un error en estas condiciones:
Atributo | Tipo |
---|---|
cid | Integer (Key) |
name | String (Key) |
comments | String |
Address | Address |
Aid | Integer (Key) ASI:FK=cid |
Acity | String |
Azip | String |
Si cid contiene un valor nulo, cree la consulta de recuperación de datos seleccionando Aid, Acity y Azip de "address". Establezca el valor de Aid en nulo.
El supuesto siguiente corresponde a un objeto padre con un objeto hijo en un objeto contenedor con dos referencias de clave. Esta situación no produce error en estas condiciones:
Atributo | Tipo |
---|---|
cid | Integer (Key) |
name | String |
comments | String |
Address | Address |
Aid | Integer (Key) ASI:FK=cid |
Acity | String (Key) ASI:FK=name |
Azip | String |
Si "name" tiene un valor nulo, cree la sentencia de recuperación de datos seleccionando Aid, Acity y Azip de "address", donde Aid=Cid y Acity tiene un valor nulo.