Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Podłączanie codeignitera do mysql i Oracle w tej samej aplikacji

Pracowałem z Oracle i mysql przy użyciu Codeigniter.

Użyłeś $this->load->database('oracle',true); powinno to być przypisane do zmiennej, ponieważ użyłeś drugiego parametru true. w ten sposób

$oracle_db=$this->load->database('oracle',true);//connected with oracle
$mysql_db=$this->load->database('default',true);//connected with mysql

Teraz możesz użyć tych dwóch zmiennych w zapytaniu.Lubię to

$oracle_db->get('people')->result();

lub

$mysql_db->get('people')->result();

Więc w końcu twój model powinien wyglądać tak (nie ładuj bazy danych do kontrolera)

function __construct()//model construct function
{
    parent::__construct();
    $this->oracle_db=$this->load->database('oracle',true);
    $this->mysql_db=$this->load->database('default',true);
}
function getPeople(){
   return $this->oracle_db->get('people')->result();
}

Mam nadzieję, że zrozumiesz. Upewnij się, że łączy się z bazą danych Oracle.

Mój plik database.php dla Oracle był taki

$tns = "
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = YOUR_IP)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = YOUR_SID)
    )
  )
       ";
$db['oracle']['hostname'] = $tns;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. O ile szybszy jest MyISAM w porównaniu do InnoDB?

  2. Zaktualizuj wiersz danymi z innego wiersza w tej samej tabeli

  3. MYSQL, bardzo powolne zamawianie przez

  4. Przygotowana pamięć podręczna instrukcji z MySQL i JDBC

  5. Dlaczego blokowanie na poziomie tabeli jest lepsze niż blokowanie na poziomie wiersza w przypadku dużych tabel?