Meerdere databases aanroepen in connectie
ik probeer al een hele tijd connectie te maken met twee databases. Voorheen gebruikte ik altijd de volgende code:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$con=mysql_connect("localhost", "root", "password");
if (!$con)
{
die ('could not connect' .mysql_error());
}
mysql_select_db("database", $con);
?>
$con=mysql_connect("localhost", "root", "password");
if (!$con)
{
die ('could not connect' .mysql_error());
}
mysql_select_db("database", $con);
?>
Hoe kan ik meerdere databases aanroepen?
Zo ja:
Code (php)
1
2
2
mysql_query("SELECT * FROM database1.table ",$con);
mysql_query("SELECT * FROM database2.table ",$con);
mysql_query("SELECT * FROM database2.table ",$con);
Zo nee, maak je een $con2 aan, voor de 2e database:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$con=mysql_connect("localhost", "root", "password");
$con2=mysql_connect("localhost", "root", "password");
if (!$con)
{
die ('could not connect' .mysql_error());
}
mysql_select_db("database", $con);
//hier query's die gebruik maken van database 1
mysql_select_db('database2',$con2);
//hier query's die gebruik maken van database 2
?>
$con=mysql_connect("localhost", "root", "password");
$con2=mysql_connect("localhost", "root", "password");
if (!$con)
{
die ('could not connect' .mysql_error());
}
mysql_select_db("database", $con);
//hier query's die gebruik maken van database 1
mysql_select_db('database2',$con2);
//hier query's die gebruik maken van database 2
?>
Nadeel van het 2e geval is dat je elke keer echt de database moet wisselen mocht je een query nodig hebben met die andere database.
Waarom heb je eigenlijk 2 database verbindingen nodig?
Robert_Deiman schreef op 17.11.2008 08:20:
Maken beide databases gebruik van dezelfde user/ pass combinatie?
Zo ja:
Zo nee, maak je een $con2 aan, voor de 2e database:
Nadeel van het 2e geval is dat je elke keer echt de database moet wisselen mocht je een query nodig hebben met die andere database.
Waarom heb je eigenlijk 2 database verbindingen nodig?
Zo ja:
Code (php)
1
2
2
mysql_query("SELECT * FROM database1.table ",$con);
mysql_query("SELECT * FROM database2.table ",$con);
mysql_query("SELECT * FROM database2.table ",$con);
Zo nee, maak je een $con2 aan, voor de 2e database:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$con=mysql_connect("localhost", "root", "password");
$con2=mysql_connect("localhost", "root", "password");
if (!$con)
{
die ('could not connect' .mysql_error());
}
mysql_select_db("database", $con);
//hier query's die gebruik maken van database 1
mysql_select_db('database2',$con2);
//hier query's die gebruik maken van database 2
?>
$con=mysql_connect("localhost", "root", "password");
$con2=mysql_connect("localhost", "root", "password");
if (!$con)
{
die ('could not connect' .mysql_error());
}
mysql_select_db("database", $con);
//hier query's die gebruik maken van database 1
mysql_select_db('database2',$con2);
//hier query's die gebruik maken van database 2
?>
Nadeel van het 2e geval is dat je elke keer echt de database moet wisselen mocht je een query nodig hebben met die andere database.
Waarom heb je eigenlijk 2 database verbindingen nodig?
Ik ben bezig met het maken van een programma dat gekoppeld is aan een oud systeem waar rechten geregeld worden. Daarom moet ik uit een andere database gegevens halen.
Kopieer / exporteer de gegevens van je rechtensysteem naar de andere database en ga die gewoon gebruiken. Het is onzinnig om het oude rechten systeem niet mee te kopiëren naar je nieuwe systeem.
Robert_Deiman schreef op 17.11.2008 09:40:
Kopieer / exporteer de gegevens van je rechtensysteem naar de andere database en ga die gewoon gebruiken. Het is onzinnig om het oude rechten systeem niet mee te kopiëren naar je nieuwe systeem.
Eens! Mocht je gedwongen zijn om de opbouw van je rechtensysteem grondig aan te passen, bouw dan in ieder geval een conversie vanuit het oude systeem.
Niets vervelender dan gebruikers die opeens niet meer kunnen wat ze altijd konden doen... (of gebruikers die juist meer kunnen dan voorheen :p )