Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Eder Fortunato

problema com campos em maiúsculo

Recommended Posts

saudações a todosestou com um probleminha, tenho uma aplicação web(PHP) que rodava com mysql, e agora tenho que migrarela para o orable 10go problema é nos nome dos campos estão, alguns em minusculos e outros em maiusculosexemplo"SELECT ID, Nome, telefone FROM ......"ele naum me retorna nada, no mysql funciona de boaexiste alguma maneira de arrumar isso, sem ter que mudar todo o codigo ja existe na aplicação?ps: usar Upper(<nome-do-campo>) tb é inviavel

Compartilhar este post


Link para o post
Compartilhar em outros sites

Este tipo de problemas nunca tive, o que dá no php é o retorno, por exemplo, quando você joga o retorno da sql num array, daí é preciso referenciar sempre em maiúsculo. São os $rs['CAMPO'].

 

Agora na sql não é pra dar problema.

Olha este exemplo que achei aqui rapidinho:

$sql ="SELECT * FROM spunico.bairro WHERE codigo = ".$codigo; 	$stmt = oci_parse($objConexao->ora_conecta, $sql);	$exec = @oci_execute($stmt, OCI_COMMIT_ON_SUCCESS);	if(!$exec){		$res = ocierror($stmt);		return false;   		}	else{						$rs = oci_fetch_array($stmt); 		$objBairro = new Bairro();		$objBairro->setCodigo($rs['CODIGO']);						$objBairro->setNome($rs['NOME']);		return $objBairro;	}	oci_close($objConexao);

Note que na select use "codigo", mas ao capturar o valor para o objeto tive de usar "CODIGO".

Compartilhar este post


Link para o post
Compartilhar em outros sites

walaceobrigado pela resposta

Note que na select use "codigo", mas ao capturar o valor para o objeto tive de usar "CODIGO".

mas é exatamente esse o "problema", nas minhas consultas, quando eu recupero os campo eu uso em minusculas$rs['Codigo]eu naum queria ter q mudar todas as selects ja existentes, entendeu o problema?a e estou usando bdx, naum sei se isso ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já vi este problema ser discutido aqui, tentou o busca ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois é cara, mas acho que vai ter de mudar, não tem jeito não.Pelo menos aqui, num grupo de 4 ou 5 programadores não achamos solução para isto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pensei em sinomimos mas não existia isto até na 8i (documentação que achei)

 

Para não ter de alterar os selects podesse criar uma view

 

create or replace view tabela

as select "campo1" campo1,"campo2" campo2,...

from ''tabela''

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois é motta, mas isso não vai resolver o problema, pois na hora de recuperar os dados e jogar nas variáveis php vai ter de usar maiúsculas também.Este problema aí está mais para php do que para oracle.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não basta criar as colunas da view com o formato do php

 

create or replace view tabela

as select "campo1" "campo1php","campo2" "campo2php",...

from ''tabela''

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, aí não sei... mas daí imagino que sempre vai ter de existir uma view para todas as tabelas... também não acho isso viável.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.