Door
Onbekende gebruiker
op 31-10-2015 16:12
gewijzigd op 31-10-2015 16:12
2.023 views
Kan je ook van twee databases selecteren?
Dit werkt niet:
$query2 = "SELECT naam,prijs FROM producten WHERE id = ".$row1['productID'];
$result2 = mysql_query($query2) or die (mysql_error());
$row2 = mysql_fetch_array($result2);
$query3 = "SELECT naam,prijs FROM producten2 WHERE id = ".$row1['productID'];
$result3 = mysql_query($query3) or die (mysql_error());
$row3 = mysql_fetch_array($result3);
$query1 = "SELECT * FROM winkelwagen WHERE ip ='".$_SERVER['REMOTE_ADDR']."'";
$result1 = mysql_query($query1) or die (mysql_error());
$query4 = "SELECT * FROM winkelwagen2 WHERE ip ='".$_SERVER['REMOTE_ADDR']."'";
$result4 = mysql_query($query4) or die (mysql_error());
Hij laat alleen de producten van winkelwagen2 zien.
Het kan wel, als je in je query-aanroepen aangeeft van welke connectie je gebruik wil maken (stap ook ajb over op MySQLi of PDO), maar het lijkt mij gewoon hinken op twee benen.
Ik heb sterk het gevoel dat de topic starter twee tabellen bedoelt en niet twee databases. Je kunt met een join query gegevens uit meerdere tabellen trekken.
In dat geval lijkt het mij handiger dat soortgelijke gegevens in eenzelfde tabel zitten, je kunt op andere manieren onderscheid maken tussen verschillende producten en winkelwagens.
Ik heb (ook hier) het sterke gevoel dat er is beknibbeld op tijd die besteed had moeten worden aan een degelijk database-ontwerp. Daar plukt de TS nu de wrange vruchten van.
PeterK: met een JOIN koppel je tabellen in 1 tabel.
Ik kan me niet voorstellen dat dit werkt:
SELECT database_een.naam, database_twee.adres
FROM database_een.tabel_namen, database_twee.tabel_adressen
WHERE database_twee.tabel_adressen.postcode = '1234AB'
AND database_een.tabel_namen.voorletters = 'J.A.'
Wat je hier aangeeft werkt inderdaad niet volgens mij.
Wat wel zou werken is:
SELECT
database_een.tabel_namen.kolomnaam,
database_twee.tabel_namen.kolomnaam
FROM
database_een.tabel_namen,
database_twee.tabel_adressen
WHERE
database_twee.tabel_adressen.postcode = '1234AB' AND
database_een.tabel_namen.voorletters = 'J.A.'
Belangrijk is dus wat zoekt topicstarter? Zoeken in databases of tabellen, het is beide mogelijk.
Oh een kleine notitie: meerdere databases werkt alleen als je met één user in alle databases kunt komen.