Foros del Web » Programando para Internet » PHP »

array asociativos

Estas en el tema de array asociativos en el foro de PHP en Foros del Web. Hola tengo el siguiente problema: Tengo una aplicacion que se conecta a una base de datos oracle, pero estoy realizando una migracion a una base ...
  #1 (permalink)  
Antiguo 23/02/2005, 13:12
Avatar de edwinandlozano  
Fecha de Ingreso: octubre-2003
Mensajes: 272
Antigüedad: 14 años, 1 mes
Puntos: 0
array asociativos

Hola tengo el siguiente problema:
Tengo una aplicacion que se conecta a una base de datos oracle, pero estoy realizando una migracion a una base de datos postgres, el inconveniente viene que cuando yo realizo un select y hago operaciones con los registros que me devolvio el select lo hago con array asociativos ($result['nom_campo']) y resulta que el esquema de la base de datos en oracle este en MAYUSCULA es decir $result['NOM_CAMPO'], y cuando me conecto a la base de datos de postgres me saca el error de que el indice no existe (dado que para postgres el esquema esta en minuscula es decir $result['nom_campo']).... las posibles soluciones que se ma han ocurrido hasta el momento son:
1. trabajo con indices numericos.(no me gusta esta opcion ya que el codigo no es muy legible por decirlo asi)
2. Por cada estrutura de una tabla (es decir sus campos) haria lo siguiente:
define ('NOM_CAMPO1',0);
define ('NOM_CAMPO2',1);
define ('NOM_CAMPO3',2);
y la hora de hacer las operaciones con el resultado de la tabla lo haria:
$result[NOM_CAMPO]....

No se si la ultima opcion sea una buena practica o si hay alguna otra opcion.... quisiera saber sus opiniones o un cosejo de cual seria una buena solucion....

De antemano muchas gracias por la informacion que me puedan dar......
  #2 (permalink)  
Antiguo 23/02/2005, 13:18
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 14 años, 6 meses
Puntos: 8
que tal si utilizas variables variables ?, y al momento de pasar a la tabla de Oracle pasas el nombre de los campos a mayusculas?.

http://www.php.net/eval

http://www.php.net/strtoupper

Saludos.
__________________
eft0's stuff! - http://estebanfernandez.net
  #3 (permalink)  
Antiguo 23/02/2005, 13:43
Avatar de edwinandlozano  
Fecha de Ingreso: octubre-2003
Mensajes: 272
Antigüedad: 14 años, 1 mes
Puntos: 0
Gracias por la pronta respuesta eft0, pero no entiendo lo que me explicas....
te coloco el codigo para hacer un poco mas claro:

Código PHP:
function trabajadores ($conn) {
$strSql="SELECT * ";
$strSql.="FROM TRABAJADORES ";
$strSql.="ORDER BY NOMBRE";
 
$result $conn->getAll($strSql);
 
 if (
DB::isError($result)) {
  die(
$result->getMessage());
 }
 else {
  return 
$result;
 }
}
---------------------------------------------------------
$arrResult=trabajadores($conn);

foreach (
$arrResult as $value) {
//el inconveniente lo tengo en esta parte en donde en oracle no hay problema //pero en postgres si dado que el esquema esta en minuscula y me saca un error //de que el indice no existe
  
if ($value['COD']==$codigo) {
    
 }


y de nuevo gracias por la informacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:14.