Chyba – driver doesn't support meta data

Joacim
Člen | 229
+
0
-

Ahoj,

mám Nette 2.2 kde mám hlavní DB v Mysql, a pomocnou Oracle DB odkud tahám jen některé info.
Pokud provedu Oracle dotaz pomocí:

$db_query = $this->database->query("select * from user");
$data = $db_query->fetchAll();
return $data;

dostanu tuto chybu:

PDOException #IM001
SQLSTATE[IM001]: Driver does not support this function: driver doesn't support meta data

Jednu aplikaci mám v Nette 2.4 a vše tam funguje, zatímco zde v Nette 2.2 mám tento problém, verzi oci8 mám stejnou.
OCI8 Version 2.0.12

oci:dbname=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL = TCP)(HOST = 1.1.2.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = TEST)(SERVER = DEDICATED)))

Verze php je 5.6 na obou serverech, jedu na CentOs, může se jednat o problém ve verzi Nette ?

Díky

CZechBoY
Člen | 3608
+
0
-

Je to možný, Nette nemělo moc dobrou podporu Oraclu… Můžeš upgradovat?

Joacim
Člen | 229
+
0
-

CZechBoY napsal(a):

Je to možný, Nette nemělo moc dobrou podporu Oraclu… Můžeš upgradovat?

Zkusím upgrade a uvidím, jelikož mi je divné, že to vrací právě toto, kdyby byl ovladač jiný tak se ani nepřipojím

Jan Endel
Člen | 1016
+
0
-

Ahoj, ukaž prosím jak registruješ oracle driver do DI.

Joacim
Člen | 229
+
+1
-

Ahoj,

takže problém Upgradem z Nette 2.2 na 2.4 vyřešen.

V config neon:

- App\Model\Facades\HistoryFacade(@database.oracle.context)

A pak ve Fasádě:

abstract class BaseDbFacade {

    /** @var Context */
    protected $database = NULL;

    public function __construct(Context $database) {
        $this->database = $database;
    }
}