Colega, com certeza o percentual de especialistas em bancos Oracle que 
participam da lista E que também são programadores php não deve ser muito 
alto,imagino : NECESSARIAMENTE tenho que te recomendar uma lista de php...

 De qquer forma : até onde eu entendo o php é semelhante à outras linguagem 
aonde vc tem um comando de conexão e aonde vc indica um e apenas um banco a 
conectar a cada vez, então ACHO (é um achismo, NÂO é nada mais que isso), eu 
Acho que as opções são :
 
 a) fora do seu programa, criar no banco de dados 9i um DATABASE LINK, ie, uma 
conexão lógica interna banco-a-banco apontando pro banco 10g : isso te permite 
que o seu programa conecte no banco 9i, use as tabelas normalmente do 9i, mas 
AINDA usando essa conexão 9i, pesquise tabelas do 10g... O lance é que :
 
   1. isso depende de o banco 9i ter acesso via rede ao banco 10g
   
   e
   
   2. muito certamente vc Não Deve ter privilégios pra criar coisas dentro dos 
bancos, vc tem que pedir pro DBA/administrador
   
ou

 b) no mesmo programa, vc conecta no 9i, busca os dados que precisa, os 
armazena localmente (num arquivo temporário, talvez) , aí conecta no 10g e vai 
lendo linha-a-linha o arq.temporário
 
ou

  c) loop de programação tipo :
  
   loop
    conecta no banco 9i
    lê uma linha e armazena em variáveis de memória
    conecta no banco 10g
    faz a pesquisa necessária especificando os dados que estão em memória 
    encerra quando todos os dados do 9i foram lidos
  end loop
  
==> nem preciso dizer, programa-exemplo fazendo b) ou c) não tem jeito de eu 
fazer, conheço o mínimo do mínimo, mas até onde sei b) e c) são SIM factíveis 
em php.....

 []s
 
   Chiappa
   
    

--- Em oracle_br@yahoogrupos.com.br, "Ana" <doceangell@...> escreveu
>
> Bom dia pessoal!
> 
> Tenho 2 bases uma Oracle 9i e outra 10g, preciso urgentemente fazer um select 
> no Oracle 9i em um mesmo arquivo php que utiliza o Oracle 10g...
> É possível?
> 
> Vou dar um exemplo do que eu fiz... Criei 2 arquivos de conexão .php (um para 
> cada banco de dados) nele tem meus ociConctar(), ociDesconectar(), e todos 
> funcionam...
> 
> //exemplo do banco 1 (funciona esse) esse arquivo se chama config.php
> function ociConectar()
> {
>       global $ociConn1;
>       $db = "(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
>           (Host = 200.169.63.2)(Port = 1521)))
>     (CONNECT_DATA = (SID = meusid)))";
>       if(!(  $ociConn1 = oci_connect("usuario", "senha", $db)  ))
>               return $conectado1 = 0;
>       else 
>               return $conectado1 = 1;
> }
> 
> //exemplo do banco 2 - esse arquivo se chama config2.php
> function ociConectar2()
> {
>       global $ociConn2;
>       $db2 = "(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
>           (Host = 200.169.63.4)(Port = 1521)))
>     (CONNECT_DATA = (SID = gep)))";
>       if(!(  $ociConn2 = oci_connect("usuario", "senha", $db2)  ))
>               return 0;
>       else 
>               return 1;
> }
> 
> ////////////////
> Lá no meu arquivo .php eu dou 2 require_once:
> 
> require_once(config.php);
> require_once(config2.php);
> 
> Durante o código existem vários ociExecutar($sql);  do banco 1 que funcionam! 
> MAS, quando eu dou um ociExecutar2($sql); 
> no meio do código é aí que não funciona... 
> 
> Minha tupla2() vem vazia. E tem dados nesse select, e o user ta certo
> e eu já conferir e reconferir dezenas de vezes e não entendo o pq da minha 
> tupla2() já dei ociDesconectar antes e ociCOnectar2() mas ainda não 
> funciona...
> 
> Eu só corro pra cá quando é importante, alguém pode me ajudar??
>


Responder a