|
v7: 1c++ UPDATE (2)
| ☑ |
0
monsterZE
29.05.12
✎
15:21
|
уже была такая ветка, но старую поднять не дают.. пишу в новой.
вобщем-то вопросы самообразовательные.
скл-2008 + 1с 7.7 + 1с++
создал отдельную базу с парой табличек. коннекчусь к ней из 1с и пишу в таблички то, что мне нужно. все работает давольно быстро.
элементы в табличках имеют поля ИД и РодительИД, апдейчу по ИД.. хотя логичнее было бы сперва выбрать по РодительИД и уже в этой выборке искать сам элемент для апдейта.
вот такие вопросы:
возможно ли реализовать такой апдейт в одном запросе? (запрос в завпросе?)
будет ли он быстрее, чем текущий вариант?
апдейтить надо несколько свойств элемента.
сам поискал.. с наскока не попалось или туплю с синтаксисом. =)
|
|
1
Ёпрст
29.05.12
✎
15:25
|
дык во фром воткни подзапрос на возврат чего угодно
|
|
2
Ёпрст
29.05.12
✎
15:27
|
|
|
3
Vakhrin
29.05.12
✎
15:29
|
если ИД уникален и индексирован, то быстрее не будет с двойной проверкой
если уникальность индекс по РодительИД и ИД (именно в таком порядке), то наиболее быстро и правильно будет
update ... where РодительИД = ? and ИД = ?
|
|
4
monsterZE
29.05.12
✎
15:43
|
(1) пишет - "неправильный синтаксис" =) ща еще поковыряю..
(3) ИД и РодительИД уникальные и индексируемые (попробую с AND)
|
|
5
monsterZE
29.05.12
✎
15:49
|
(4) или данных не так много или разницы не видно.
Спасибо. =)
|
|
6
Vakhrin
29.05.12
✎
15:51
|
с and делай только если у тебя составной индекс есть на оба поля и условие в запросе в порядке нахождения полей в индексе
|
|
7
monsterZE
29.05.12
✎
15:55
|
(6) а где прописывается такой тип индекса? лазаю по настройкам поля в СКЛ-Студио, что-то такого не нахожу..
|
|
8
Ёпрст
29.05.12
✎
16:06
|
(7) в дереве у нужной таблички смотри индексы.. можешь и свой создать, включив в него 2 поля своей таблички
|
|
9
monsterZE
29.05.12
✎
16:10
|
(8) Ага, спасибо, нашел. =) попробую сперва все-таки с FROM правильно написать.
|
|