2013-10-10 3 views
1

Наличие странной проблемы с таблицей mysql. Я могу использовать столбец «entity_table» без каких-либо проблем в инструкции SELECT, но он дает мне проблемы с любым выражением UPDATE или INSERT.MySQL Column, предоставляющий Insert/Update erros

В частности, я получаю

"Error Code: 1054. Unknown column 'entity_table' in 'field list'" 

Столбца определенно существует, так как я могу использовать его в ЗЕЬЕСТЕ, как указано выше.

я получаю ту же самую ошибку на обоих из следующих утверждений:

INSERT INTO `civicrm_note` (`entity_table`) VALUES ('civicrm_relationship') 

и

INSERT INTO `civicrm_note` (`entity_id`) VALUES (513576) 

, который интересен, так как я даже не ссылки entity_table в списке полей во втором заявлении ,

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

Это ЗЕЬЕСТ работает отлично:

SELECT * FROM civinbla.civicrm_note WHERE entity_table = 'civicrm_contact'; 
+0

Показать выбранный оператор. –

+0

Может ли 'civicrm_note' быть точкой зрения? – Barmar

+1

Возможно, есть триггер, связанный с таблицей, и ошибка исходит оттуда. – Barmar

ответ

1

Я предполагаю, что это проблема запуска, как указано Barmar. Посмотрите здесь: MySQL Error 1054: Unknown column in 'field list' on INSERT

Кроме того, если entity_id является первичным ключом, вы можете вставить оба значения (entity_table и entity_id) в одном заявлении. В противном случае таблица не будет принимать вашу вставку.

Я не знаю, хотя, если бы это привело бы к такой ошибке.

+0

entity_id не является PK, но есть поле id с PK. Это автоинкрементно и не нужно включать. Глядя на триггеры – bpmccain

+0

Я вас слышу. Не стесняйтесь публиковать свое решение, когда найдете его. Желаем вам успеха. – Stacky

2

Ответ был связан с триггерами. Триггеры нашей БД были программно созданы с использованием пользователя MySQL, который существует исключительно для приложения. По какой-то причине триггеры AFTER INSERT и AFTER UPDATE были изменены так, что DEFINER был root вместо пользователя приложения.

Изменен ОПРЕДЕЛЕНИЕ для пользователя приложения, и все работает нормально.

+0

bpmccain, Возможно, вам будет интересно узнать, что группа из нас очень близка к запуску сайта CiviCRm StackExchange - см. Http://area51.stackexchange.com/proposals/77367/civicrm. В то время как у нас более 300 коммитов, которые достаточно активны в последнее время, нам нужны еще несколько таких людей, как вы, у которых есть 200 репутации на другом сайте StackExchange для совершения. Пожалуйста, подумайте о помощи нам! Благодарю. –