Logrus писал(а): ↑Ср авг 17, 2022 6:32 pm
когда все в одном месте разные функции при чтении читая из оного не приведут к ошибкам
Вчера я всё же решился навести порядок в именах объектов комнат и реле. За эти годы там такой бардак в именах накопился. Просто в начале у меня ещё и никакого стиля не было. Многое попало под переименование. Ну и как следствие полный беспредел в колонке PROPERTY_NAME. Смотрю так:
Код: Выделить всё
SELECT *
FROM pvalues
JOIN objects ON pvalues.OBJECT_ID = objects.id
JOIN properties ON pvalues.PROPERTY_ID = properties.id
WHERE pvalues.PROPERTY_NAME != CONCAT_WS( '.', objects.TITLE, properties.TITLE )
Правлю всё разом так:
Код: Выделить всё
UPDATE `pvalues` SET `PROPERTY_NAME` = CONCAT( (
SELECT title
FROM `objects`
WHERE pvalues.OBJECT_ID = objects.id
), '.', (
SELECT title
FROM `properties`
WHERE pvalues.PROPERTY_ID = properties.id
) )
Вроде бы сейчас всё хорошо. Но вот ещё одна причина ошибок. Старайтесь не переименовывать объекты без необходимости. Лучше создать новый. Мне просто было историю свойств жаль терять. Покою теперь только кеш не дает. Я до сих пор не знаю структуру кеша. И какие методы изначально его используют. Как нибудь в непогоду займусь изучением. Что то мне подсказывает, что его можно просто грохнуть. И даже не можно, а нужно. Подскажите что почистить?
Что мне будет за то, если грохну все записи в таблице cached_values? Не саму таблицу разумеется. Или нужно использовать условия? и всё удалять не стоит? Тип таблицы MEMORY, всё равно же очистится при перезагрузке, или это не так?