
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
15.02.2014, 15:47:30
|
|||
|---|---|---|---|
update парметров в модели EAV |
|||
|
#18+
Гы, столкнулся с задачей необходимости обновления нескольких параметров в EAV табличке... и получается что сделать одним запросом - никак?!? Типовая табличка с хранением "по вдоль": id fkey_id param_name value 1 2 всего 50 2 2 состояние оператор 3 2 текСтрока 5 4 2 текОбъект 10 5 2 времяСохр 21:30:20 По факту решения оператора надо одновременно изменить значения параметров "текСтрока", "текОбъект" и "время Сохр" чего-то гадал, гадал, а одним update получается только через "пятую точку", в смысле в части set надо прописывать всё через SWITCH или IF. А ежели "весь список" наименований параметров мне "неизвестен" втыкать в default присвой чего было ранее... ... или дублировать этот же switch в части where. ... или гонять prepare/execute в виде пачки запросов. Есть идеи получше? :) Это надо делать так! (Переделкин) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.02.2014, 16:05:58
|
|||
|---|---|---|---|
|
|||
update парметров в модели EAV |
|||
|
#18+
Arhat109... или гонять prepare/execute в виде пачки запросов. Зачем пачки-то? Препарируешь запрос update t set value=:new_value where id=:id, а потом выполняешь его несколько раз с разными значениями new_value и id. Чтобы было "одновременно", оборачиваешь это всё в транзакцию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.02.2014, 16:17:42
|
|||
|---|---|---|---|
update парметров в модели EAV |
|||
|
#18+
Dimitry Sibiryakov, я это и имел ввиду. Понятно что препарируешь один раз. Не хотелось в транзакцию ... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.02.2014, 16:27:29
|
|||
|---|---|---|---|
update парметров в модели EAV |
|||
|
#18+
Arhat109, просто это сейчас там 3-5 параметров, а в боевом варианте их будет от 50 до 500... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.02.2014, 11:37:18
|
|||
|---|---|---|---|
update парметров в модели EAV |
|||
|
#18+
Arhat109, а на клиенте генерить запрос не ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.02.2014, 13:14:38
|
|||
|---|---|---|---|
update парметров в модели EAV |
|||
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.02.2014, 17:43:06
|
|||
|---|---|---|---|
update парметров в модели EAV |
|||
|
#18+
Akina, Угу. И это похоже наиболее разумный вариант при большом наборе параметров. На ранее: так они (запросы) у меня завсегда лезут с клиенту, поскольку ХП - пишу только когда заставят. Имею Мнение - Х.. Оспоришь (это дабы холивар не начался): нафиг этот костыль в РА?!? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1835207]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
42ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 193ms |
| total: | 306ms |

| 0 / 0 |
