2013-03-22 2 views
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 запрос.

Что мне нужно сделать, чтобы получить доступ к нему с помощью правильных учетных данных?

Заранее спасибо.

+0

ваше используемое соединение пользователь к базе данных не имеет привилегий для выбора –

+0

Я уверен, что вам нужно только одно соединение тоже ... –

ответ

0

Существует определенно что-то не так с вашими правами.

Перейдите в раздел «Права» в своем phpmyadmin и найдите пользователя 'testuser2' и отредактируйте его права. Убедитесь, что все флажки отмечены галочкой, нажмите «RUN» и убедитесь, что «testuser2» теперь имеет «все привилегии».

Надеюсь, это поможет.

0

вам необходимо предоставить доступ к обеим базам данных одному пользователю. И подключитесь к серверу базы данных с этим пользователем.

Смежные вопросы