Не удается получить доступ к таблице во 2-й базе данных из запроса MySQL

У меня есть 2 базы данных на сервере:

  • база данных1
  • база данных2

Я пытаюсь запросить таблицу в каждой базе данных. Однако, когда я пытаюсь это сделать, я получаю следующую ошибку:

Неизвестная таблица «database2.client» в списке полей

Вот код, который я использую в скрипте, работающем в базе данных 1:

SELECT database2.client.id;

Он возвращает неизвестную ошибку таблицы. Странно то, что если я запрашиваю базы данных, он показывает их обе:

SHOW DATABASES

он возвращает следующее:

information_schema
database1
database2

Я не уверен, почему синтаксис SHOW подтверждает наличие обеих баз данных, но я не могу выбрать данные из другой таблицы.


person Daniel C    schedule 03.10.2012    source источник
comment
Имеет ли пользователь, под которым вы запускаете запросы на каждом сервере базы данных?   -  person JSK NS    schedule 03.10.2012
comment
что такое database2.client.id? что такое «.id»?   -  person poudigne    schedule 03.10.2012


Ответы (3)


Попробуй это:

SELECT id FROM database2.client;
person JSK NS    schedule 03.10.2012

Я считаю, что правильный синтаксис будет:

SELECT id FROM database2.client

Где id — это столбец, database2 — ваша база данных, а client — ваша таблица.

person Kermit    schedule 03.10.2012

Можно ли его выбрать, если сначала запустить use database2, а потом SELECT client.id?

ИЗМЕНИТЬ:

Как уже отмечали многие, вам нужно использовать правильный синтаксис SELECT.

USE database2;
SELECT id FROM client;
person gcochard    schedule 03.10.2012
comment
это работает, но только с SELECT id FROM client, а не SELECT client.id - person Daniel C; 03.10.2012