Не удалось разрешить действительную таблицу в PhpStorm

Я получаю unable to resolve tableошибки в php-файлах, содержащих SQL-запросы к действительным таблицам.

введите описание изображения здесь

Если я Ctrl + Enterпо запросу, то я получаю ожидаемые результаты в консоли БД, и если я разворачиваю базу данных на вкладке проводника БД, я могу увидеть таблицы.

Это не влияет на выполнение кода, но это раздражает, потому что это бросается в глаза при написании кода и маскирует реальные ошибки SQL.

Я попытался обновить соединение с базой данных, и я проверил, что вкладка php подключается к правильной базе данных.

mysql,phpstorm,

6

Ответов: 5


6 ов принято

Попробуйте повторно создать соединение с БД с нуля (удалите существующий и создайте его снова).


Думая о возможных причинах ... Я могу думать об этом сценарии:

  • работа с проектом в текущей стабильной версии (в настоящее время 2016.1.х);
  • пытаясь собрать EAP для следующей версии (2016.2 в данный момент) в этом проекте и внести некоторые изменения, связанные с DB (даже простая синхронизация DB);
  • возвращаясь к стабильной версии (2016.1.x) .. и потому что новая версия использует более новый формат файла / версию для данных, связанных с БД (структура кэшированной БД и т. д.). IDE может начать игнорировать формат «неизвестный / новый» для таких данных и вместо того, чтобы метать соответствующее предупреждение, которое он просто «молча» бросает сообщение «неразрешенная таблица».

Других идей нет.


12 ов

В 2017 году я должен был перейти к настройкам, языкам и рамкам, областям разрешений SQL и добавить ссылку на проект и базу данных, чтобы снова получить это право


1

В моем случае я работал над добавлением имени базы данных до имени таблицы.

Например, вместо написания SELECT * FROM Clientput SELECT * FROM database.Client.


0

Неправильное загрязнение ошибок.

Если у меня возникнут проблемы с разрешением SQL, я проверю свои области разрешения (настройки -> Языки и рамки -> Области разрешения SQL).

Как правило, у меня есть большинство проблем, когда по умолчанию для моего сопоставления проектов установлено значение «Все источники данных».

Следующие шаги всегда исправляют это для меня:

  • Нажмите раскрывающееся меню «Сопоставление проектов»
  • Снимите отметку с глобального значения «Все источники данных» (требуется для выбора другого выбора)
  • Нажмите стрелку раскрывающегося списка для подключения к базе данных.
  • Проверьте «Все схемы» (или конкретные таблицы)
  • Нажмите «ОК», чтобы закрыть окно настроек.

Ошибки ложного разрешения должны исчезнуть после следующего цикла анализа.

Вы не ограничены применением вышеуказанных шагов только к одному соединению с БД, вы можете сделать это для всех подключений в своем проекте.


Иногда добавление области пользовательского разрешения также будет работать, но для меня это поразит или пропустит.

  • Щелкните знак плюса (вверху справа)
  • Выберите файл, над которым вы работаете, и нажмите «ОК»
  • Выберите столбец «Область разрешения»
  • Отменить выбор всех источников данных
  • Выберите нужные ресурсы БД

Повторное подключение к БД никогда не работает для меня.

Указание таблицы хорошо работает ... но она может стать очень громоздкой по мере роста проекта.


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


РЕДАКТИРОВАТЬ:

Я также столкнулся с дополнительной ситуацией, когда PHPStorm разрешит только некоторые из моих запросов, независимо от того, какие настройки разрешения области я использовал. Однако, после того, как я подключил консоль к моему файлу, они решили все нормально. (Найдите «Attach Console» в справке | Найти действие. Вы также можете добавить его в «Быстрый список» или «Ключ-карту»).


0

в версиях phpStorm до 2017 года, у которых нет опции «Разрешения SQL-разрешений», чтобы отклонить эту ошибку:

  1. перейти в файл
  2. перейти к настройкам ...
  3. перейти к редактору, а затем проверить
  4. в главе SQL снимите отметку с неразрешенной ссылки
  5. нажмите, чтобы применить, а затем ОК.

>>>>>>> Надежда Помощь O

MySQL, PhpStorm,
Похожие вопросы