|
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
markus1917 User
Anmeldungsdatum: 11.12.2007 Beiträge: 24
|
17.03.2009 9:32 Connect: Zwei Datenbanken |
|
|
Ich suche gerade verzweifelt einen Fehler mit dem Connect zu zwei Datenbanken.
define("EINS","mysql://benutzer:test@192.168.10.100/dbeins");
define("ZWEI","mysql:// benutzer2:test2@192.168.10.100/dbzwei");
$options = array ('persistent' => true);
$db1 =& MDB2::factory(EINS, $options);
$db1->setFetchMode(MDB2_FETCHMODE_ASSOC);
if(PEAR::isError($db1)) {
die("DB EINS geht nicht!");
}
$db2 =& MDB2::factory(ZWEI, $options);
$db2->setFetchMode(MDB2_FETCHMODE_ASSOC);
if(PEAR::isError($db2)) {
die("DB ZWEI geht nicht!");
}
$query="select foo1 from bar1";
$result1=$db1->queryAll($query));
if (PEAR::isError($result1)) {
die($query."<br><br>" . $result1->getMessage());
}
$query="select foo2 from bar2";
$result2=$db2->queryAll($query));
if (PEAR::isError($result2)) {
die($query."<br><br>" . $result2->getMessage());
}
// bis hier alles super!
$query="select foo1 from bar1";
$result1=$db1->queryAll($query));
// hier kommt der fehler!
if (PEAR::isError($result1)) {
die($query."<br><br>" . $result1->getMessage());
}
Wo ist der Denkfehler? |
|
| Nach oben |
|
 |
mark Power User
Anmeldungsdatum: 31.05.2004 Beiträge: 970
|
17.03.2009 21:56 |
|
|
Möchtest du uns auch verraten, welche Fehlermeldung du bekommst?
In vielen Fällen hilft es bei MDB2 übrigens, neben getMessage() auch getDebugInfo() aufzurufen. |
|
| Nach oben |
|
 |
markus1917 User
Anmeldungsdatum: 11.12.2007 Beiträge: 24
|
18.03.2009 5:11 |
|
|
Ja sorry: Es sagt, dass es tabelle "foo1" nicht findet. Also scheint es doch so, dass nicht der richtige Handler bedient wird.
Ich stehe da vor einem Rätsel! |
|
| Nach oben |
|
 |
markus1917 User
Anmeldungsdatum: 11.12.2007 Beiträge: 24
|
19.03.2009 6:09 |
|
|
Die Lösung RTFM
http://pear.php.net/manual/en/package.database.mdb2.intro-dsn.php
Einfach die option new_link=true und persistent auf false setzen, wie es die FAQ sagt:
| Zitat: | | new_link [boolean] Some RDBMS do not create new connections when connecting to the same host multiple times. If this option is set to TRUE it will attempt to force a new connection. |
| Code: | define("EINS","mysql://benutzer:test@192.168.10.100/dbeins?new_link=true");
define("ZWEI","mysql:// benutzer2:test2@192.168.10.100/dbzwei?new_link=true");
$options = array ('persistent' => false); |
Warum man das nicht über die options beim connect setzen kann, ist mir schleierhaft. Solange es geht, kann mir das aber auch egal sein. |
|
| Nach oben |
|
 |
|
|
|
Zu Deinen Favoriten hinzufügen
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten Du kannst Dateien in diesem Forum herunterladen
|
|