PHP Access 2数据库

PHP Access 2数据库,php,mysql,Php,Mysql,目前,对于我们的登录系统等,我们使用一个connect.php文件,其中包含以下内容 $connect_error = 'Sorry, we\'re currently experiencing connection problems.'; mysql_connect('localhost', 'x', 'x') or die($connect_error); mysql_select_db('x'); 我们目前正在开发一个系统,我们希望用户能够添加设备到他们的帐户 我们的主表存储了所有用户信

目前,对于我们的登录系统等,我们使用一个connect.php文件,其中包含以下内容

$connect_error = 'Sorry, we\'re currently experiencing connection problems.';
mysql_connect('localhost', 'x', 'x') or die($connect_error);
mysql_select_db('x');
我们目前正在开发一个系统,我们希望用户能够添加设备到他们的帐户

我们的主表存储了所有用户信息,例如名字、姓氏、电子邮件、密码

在此表中,我们添加了以下字段-设备1、设备2、设备3

除此之外,我们还希望能够访问另一个数据库,我们希望在主数据库中保留设备id,以便知道谁拥有哪些设备

第二个数据库将由设备ID、Lat、Long和Time组成

我们希望能够读取任何一个数据库,我不确定如何指定要连接的数据库,因为我只处理过一个数据库

我不确定这是否可行,或者我的做法是否完全错误——两个数据库将位于同一台服务器上,如果有帮助,我们可以将同一用户分配到两个数据库


谢谢

不应使用mysql,因为不推荐使用函数:

$database_handler_1 = mysql_connect("localhost", "username", "password");
// The fourth parameter is for "new link" 
$database_handler_2 = mysql_connect("localhost", "username", "password", true); 

// Insert as parameter the database handler
mysql_select_db('database1', $database_handler_1);
mysql_select_db('database2', $database_handler_2);

// And run queries with the database handler as second parameter:
mysql_query("SELECT * FROM table", $database_handler_1);
mysql_query("SELECT * FROM table", $database_handler_2);
可以改为使用:

$database_handler_1 = new PDO('mysql:host=localhost;dbname=database1', $user, $pass);
$database_handler_2 = new PDO('mysql:host=localhost;dbname=database2', $user, $pass);
$database_handler_1->query('SELECT * from FOO')
$database_handler_1->query('SELECT * from BAR')
请在此处查看完整的PDO文档:

首先,您不应该使用mysql函数,因为这些函数已被弃用。使用或用于此

在Mysql中,解决方案是使用返回的链接标识符。但如果您使用MySQLi或PDO,则需要首先创建这些对象并使用该对象。MySQLi的OOP接口没有链接标识符的概念。阅读帮助您迁移的PHP手册。用于PDO学习

对于MySQLi扩展,它已经是一个对象,并且该对象包含数据库信息

$db1 = new mysqli(...);
$db2 = new mysqli(...);

// sending query in database 1
$db1->query("...") 

// sending query in database 2
$db2->query("...") 
对于MySQL扩展,返回链接标识符。您应该将其保存在变量中并使用它

$link1 = mysql_connect();
mysql_select_db($dbnane, $link1);

$link2 = mysql_connect();
mysql_select_db($dbnane, $link2);

In query you should use it like this,

mysql_query($query, $link1); // query in first db

mysql_query($query2, $link2); // query in second db;

我想我对你的问题不是很确定。当然,一个数据库中可以有多个表。另一方面,从PHP5.5.0开始,mysql_*函数已被弃用。使用类似或。它们不再得到维护。看到了吗?相反,学习,并使用or-将帮助您决定哪一个。如果您选择PDO,。这个答案会更好,如果它没有使用不推荐的mysql函数,即使用mysqli或PDO代替。当然,您是绝对正确的。将尽快对其进行编辑: