INNER JOIN über 2 Datenbanken

Alles, was MySQL betrifft, kann hier besprochen werden.

INNER JOIN über 2 Datenbanken

Postby samurai » 18. May 2009 10:13

Hallo,

ich habe folgendes script, welches einen Datensatz einer Datenbank (Tabelle1) nur dann ausgeben soll, wenn die PNr drin vorkommt und Pause gleich 0 ist und der Wert eines anderen Datensatztes in einer anderen Datenbank (Tabelle2) größer als Null ist. Jedoch passt irgendwas nicht. Es gibt die Fehlermeldung:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource

Hier mein Script:

Code: Select all
$PPN = 23487;
$server1 = @mysql_connect("db.anbieter.de" , "Benutzer1", "pass1");
$db1 = "DB12222";
$server2 = @mysql_connect("db.anbieter.de" , "Benutzer2", "pass2");
$db2 = "DB13333";

$sss3 = "SELECT $db1.Tabelle1.* FROM  $db1.Tabelle1 INNER JOIN $db2.Tabelle2 ON ($db1.Tabelle1.Nr = $db2.Tabelle2.Nr)  WHERE $db1.Tabelle1.PNr LIKE '%$PPN%' AND $db1.Tabelle1.Pause = '0' AND $db2.Tabelle2.Wert > 0 ORDER BY rand() LIMIT 3";
$eee3 = mysql_query($sss3);
$zzz3 = mysql_num_rows($eee3);


Wie gesagt, das Script gibt die o.g. Fehlermeldung aus.
Kann mir jemand helfen?

Danke vorab!
samurai
 
Posts: 45
Joined: 17. July 2006 13:39

Re: INNER JOIN über 2 Datenbanken

Postby Wiedmann » 18. May 2009 10:40

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource

Dann solltest du dir die MySQL Fehlermeldung ausgeben lassen, die im Fehlerfall von mysql_query() aufgetreten ist.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: INNER JOIN über 2 Datenbanken

Postby Nobbie » 18. May 2009 11:02

Man kann nicht Tabellen aus verschiedenen Datenbanken joinen - das ist kein ANSI SQL. Selbst wenn MySQL es könnte (was syntaktisch zumindest vorstellbar ist), ist es ungültiges SQL.
Nobbie
 
Posts: 7132
Joined: 09. March 2008 13:04


Return to MySQL

Who is online

Users browsing this forum: No registered users and 1 guest