sql >> Database teknologi >  >> RDS >> Mysql

Hvordan bruger man flere databaser ved hjælp af php?

Du behøver ikke to forbindelser, hvis begge databaser er placeret på den samme mysql-server, og du får adgang til dem begge som en unik bruger.

Du behøver heller ikke vælge en DB.
Bare brug databasenavnet som præfiks, når du angiver tabellerne:

<?php

mysql_connect("localhost","root","pass") or die(mysql_error());

$query = "SELECT * FROM asteriskcdrdb.cdr";
$result = mysql_query($query)or die(mysql_error());
var_dump($result);

$query2 = "SELECT * FROM pj8v2.tb_did_avalaible";
$result2 = mysql_query($query2)or die(mysql_error());
var_dump($result2);

?>

Det virkelige problem i din kode er:der kan kun være én aktiv DB, den burde fungere på denne måde:

<?php

$conn1 = mysql_connect("localhost","root","passw0rd") or die(mysql_error());   
$conn2 = mysql_connect("localhost","root","passw0rd",true) or die(mysql_error());

mysql_select_db("asteriskcdrdb",$conn1);
$query = "SELECT * FROM cdr";
$result = mysql_query($query,$conn1);

var_dump($result);


mysql_select_db("pj8v2",$conn2);
$query2 = "SELECT * FROM tb_did_avalaible";
$result2 = mysql_query($query2,$conn2);

var_dump($result2);

?>

Selvom der ikke er behov for 2 forbindelser, kan du vælge begge DB'er ved at bruge den samme forbindelse.



  1. LINQ til Entities multiple join

  2. Fejl ved forsøg på at migrere postgresql db til mysql med workbench

  3. hvordan man erklærer global variabel i SQL Server ..?

  4. Hent det sidst indsatte række-id (med SQL-sætning)