Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
MS SQL->VFP8.0
|
|||
|---|---|---|---|
|
#18+
Сейчас столкнулся еще с одной проблемой: раньше из фокса вызывались процедуры sql server'a, теперь нужно перенести их на фокс 1) пройдет ли такой вызов на фоксе (лично я сомневаюсь, но может vfp8.0 поддерживает?) INSERT INTO ARHPOW(idob, id_meter, m_gr, m_adr, mpower, rpower, dattim) SELECT idob, id_meter, m_gr, m_adr, mpower, rpower, dattim FROM TMPPOW1 2) вторая процедура: UPDATE ARHPOW SET MPOWER=TMPPOW1.MPOWER, RPOWER =TMPPOW1.RPOWER FROM TMPPOW1 WHERE ARHPOW.M_GR =TMPPOW1.m_gr AND ARHPOW.M_ADR=TMPPOW1.m_adr AND ARHPOW.DATTIM=TMPPOW1.dattim DELETE FROM TMPPOW1 FROM ARHPOW WHERE TMPPOW1.m_gr=ARHPOW.M_GR AND TMPPOW1.m_adr=ARHPOW.M_ADR AND TMPPOW1.dattim=ARHPOW.DATTIM такое фокс поймет но по-моему не так как sql ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 10:53 |
|
||
|
MS SQL->VFP8.0
|
|||
|---|---|---|---|
|
#18+
по поводу insert вопрос снимается, нашел в хелпе что можно, ну а на второй жду ответов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 11:00 |
|
||
|
MS SQL->VFP8.0
|
|||
|---|---|---|---|
|
#18+
Далее, update и delete точно не пройдут из-за синтаксиса(операторы from) Предложите, please, фоксовский аналог ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 11:05 |
|
||
|
MS SQL->VFP8.0
|
|||
|---|---|---|---|
|
#18+
ИЗменил на такое вот GO TOP IN TMPPOW1 DO WHILE !EOF(TMPPOW1) UPDATE ARHPOW SET MPOWER = TMPPOW1.MPOWER, ; RPOWER = TMPPOW1.RPOWER ; WHERE ARHPOW.M_GR = TMPPOW1.m_gr AND ; ARHPOW.M_ADR = TMPPOW1.m_adr; AND ARHPOW.DATTIM = TMPPOW1.dattim IF _TALLY != 0 SELECT TMPPOW1 DELETE SKIP -1 ENDIF SKIP ON TMPPOW1 ENDDO Сейчас тестирую, но если кто сразу видит ошибки сообщите, секономьте мне время ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 11:20 |
|
||
|
MS SQL->VFP8.0
|
|||
|---|---|---|---|
|
#18+
Вместо цикла DO WHILE !EOF() используй цикл SCAN...ENDSCAN Если я правильно понял, что именно тебе нужно, то попробуй так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Чтобы поиск по LOCATE выполнялся быстрее в таблице ARHPOW должны существовать 3 индекса по полям M_GR, M_ADR, DATTIM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 11:50 |
|
||
|
MS SQL->VFP8.0
|
|||
|---|---|---|---|
|
#18+
Да ты понял почти все правильно, только запись удаляется если найдена, т.е. твой код только без else ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 12:16 |
|
||
|
MS SQL->VFP8.0
|
|||
|---|---|---|---|
|
#18+
Как-то сразу не подумал. Сколько записей может удовлетворять условию поиска, которе я написал в LOCATE? Мой код сработает только если не больше 1. Если же возможно несколько записей, то следует переписать так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Впрочем, можно оставить и UPDATE-SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2004, 12:39 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32521854&tid=1596589]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
9ms |
get forum data: |
4ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 360ms |

| 0 / 0 |
