2011-11-10 54 views
0

我有两个独立的数据库,我想同时打开它们两个的连接,它们都具有相同的登录细节,所以我使用mysql_connect函数中的第四个参数,因此我可以同时使用这两个参数。打开两个独特的mysql连接?

这样..

$db1 = mysql_connect('host','user','pass',true); 
mysql_select_db('db1', $db1); 
$db2 = mysql_connect('host','user','pass',true); 
mysql_select_db('db2', $db2); 

当我使用的mysql_query$db1资源它工作正常,但是当我用$db2仍然尝试使用db1数据库。

我知道我可以参考数据库,如db.table,但只是想知道为什么这不起作用?

+0

谁提出了这样的问题?使用*代码*由“仍尝试使用db1数据库”组成? –

+0

@ Col.Shrapnel - 你在做什么? – Brett

回答

1

如果您未提供new_link参数的参数,则会返回现有链接;但是,如果你但启用了SQL安全模式,那么它将被忽略:

bool new_link

如果第二个电话是对mysql_connect()使用相同的参数, 没有新的链接会被建立,但是相反,链接标识符 已经打开的链接将被返回。 new_link参数 修改了此行为,并且使mysql_connect()始终打开新的 链接,即使以前使用相同的 参数调用了mysql_connect()。

SQL safe mode中,该参数被忽略。

这可能是这种情况。

+0

我已经在'new_link'参数中传递'true',就像你在上面的代码中看到的那样。 – Brett