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

start [/forum/topic.php?fid=47&msg=38562770&tid=1835207]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
44ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 304ms |

| 0 / 0 |
