2011-11-10 7 views
0

私は2つの別々のデータベースを持っていて、両方のデータベースへの接続を同時に開きたいのですが、どちらも同じログイン詳細を持っていますので、mysql_connect関数の4番目のパラメータを使用しました。私は$db2を使用する場合2つのユニークな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リソースを使用する。このよう

は..しかし、それはまだ 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

関連する問題