
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
07.12.2004, 17:41:38
|
|||
|---|---|---|---|
|
|||
Два цикла |
|||
|
#18+
Господа! Ниже описанный код работает. но технологически это неправильно. Сам думаю что надо использовать For Each...Next в одном из циклов. Кто силен в циклах, прошу подкорректировать. Благодарю за участие! Dim dbs As DAO.DataBase Dim rs As DAO.Recordset Dim rst As DAO.Recordset Set dbs =CurrentDB Set rs = dbs.OpenRecordset("SELECT InsDelete.TableUd FROM InsDelete GROUP BY InsDelete.TableUd HAVING ((Not (InsDelete.TableUd) Is Null))") Do While Not rs.EOF Set rst = dbs.OpenRecordset("SELECT [40Delete_" & rs.Fields(0) & "].FilialKod" & KodFilial & " FROM 40Delete_" & rs.Fields(0) & " GROUP BY [40Delete_" & rs.Fields(0) & "].FilialKod" & KodFilial & " HAVING ((Not ([40Delete_" & rs.Fields(0) & "].FilialKod" & KodFilial & ") Is Null))") Do While Not rst.EOF dbs.Execute ("DELETE " & rs.Fields(0) & ".FilialKod" & KodFilial & " FROM " & rs.Fields(0) & " WHERE (((" & rs.Fields(0) & ".FilialKod" & KodFilial & ")=" & rst.Fields(0) & "))"), dbFailOnError rst.MoveNext Loop rst.Close rs.MoveNext Loop rs.Close Set rs = nothing Set rst = nothing ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.12.2004, 18:08:49
|
|||
|---|---|---|---|
Два цикла |
|||
|
#18+
да вроде For each будет медленней, да и в этой ситуации он работать не будет. s = rs.Fields(0) и везде вместо rs.Fields(0) используй s децл быстрее будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.12.2004, 19:55:15
|
|||
|---|---|---|---|
|
|||
Два цикла |
|||
|
#18+
Если по логике надо делать movenext, то надо делать. Никакой for each этого не заменит. Разве только если пройти по рекордсету и загрузить его в массив. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.12.2004, 20:10:27
|
|||
|---|---|---|---|
Два цикла |
|||
|
#18+
Kelmeдецл быстрее будет. Оффтоп: а зачем нам быстрый Децл? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.12.2004, 20:57:22
|
|||
|---|---|---|---|
Два цикла |
|||
|
#18+
Владимир СанычЕсли по логике надо делать movenext, то надо делать. Никакой for each этого не заменит. Разве только если пройти по рекордсету и загрузить его в массив. а зачем ходить? сразу в массив при помощи Getrows() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=45&mobile=1&tid=1669891]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
24ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 194ms |
| total: | 289ms |

| 0 / 0 |
