0
$db=mysql_connect("localhost", "testuser1", "testuser1") or die(mysql_error()); 
$db2=mysql_connect("localhost", "testuser2", "testuser2", true) or die(mysql_error()); 
$dbname="database1"; 
$dbname2="database2";

mysql_select_db($dbname,$db) or die (mysql_error());
mysql_select_db($dbname2,$db2) or die (mysql_error());


 //this is for the product attributes
 $data = mysql_query("SELECT db.attribute_stock, db.options_values_sku
                                 FROM db.products_attributes 
                                 LEFT OUTER JOIN db2.oscomstock ON db.product_attributes.options_value_sku=db2.oscomstock.options_value_sku 
                             ") or die(mysql_error()); 

ただし、これを実行しようとすると、次のエラーが発生します。

SELECT command denied to user 'testuser2' for table 'products_attributes'

SQLクエリを実行するときに、両方のデータベースに対して1セットの資格情報のみを使用しているようです。

正しい資格情報でアクセスするにはどうすればよいですか?

前もって感謝します。

4

2 に答える 2

0

あなたの権利には明らかに何か問題があります。

phpmyadminの「rights」セクションに移動し、ユーザー「testuser2」を見つけて、その権限を編集します。すべてのチェックボックスがオンになっていることを確認し、[実行]をクリックして、[testuser2]に[すべての特権]があることを確認します。

お役に立てれば。

于 2013-03-22T16:43:37.757 に答える
0

1人のユーザーに両方のデータベースへのアクセスを許可する必要があります。そして、そのユーザーでデータベースサーバーに接続します。

于 2013-03-22T16:45:01.307 に答える