www.map-info.ru :: Просмотр темы - Обновление колонки таблицы
                               РќР° главную страницу сайта

 
                                
ВходВход    РегистрацияРегистрация    ПрофильПрофиль    ПользователиПользователи    ГруппыГруппы    FAQFAQ    ПоискПоиск  

 
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Предыдущая тема :: Следующая тема  
Автор Сообщение
Vovik



Зарегистрирован: 04.05.2008
Сообщения: 57

СообщениеДобавлено: Ср Июл 27, 2016 4:03 am    Заголовок сообщения: Обновление колонки таблицы Добавить ответ со ссылкой на данный текст

Надо обновить строковую колонку одной таблицы данными из другой при их (объектов обоих таблиц) географическом совмещении. Нужно уменьшить время обновления.

При n >19000 код работает более 10 минут

n = Val(mapinfo.eval(" TableInfo(" & name_table1 & ", 8) "))
For i_RowId = 1 To n
mapinfo.Do "Fetch rec " & i_RowId & " From " & name_table1
mapinfo.Do "mousexy = " & name_table1 & ".obj"
mapinfo.Do "Select * From " & name_table2 & "where obj Partly Within mousexy into ~temptruba noselect"
nt = Val(mapinfo.eval("TableInfo(~temptruba , 8 )"))
If nt >= 1 Then Call procedura_truba(nt, "id_truba_start", i_RowId)
Next




Private Sub procedura_truba(nt As Integer, colam As String, i_RowId As Long)
Dim id_truba As String, st As String
Dim i As Integer
On Error GoTo 1
For i = 1 To nt
mapinfo.Do "Fetch rec " & i & " From ~temptruba"
id_truba = mapinfo.eval("~temptruba.id")
If Val(id_truba) <> i_RowId Then st = st & id_truba & ";"
Next
If st <> "" Then mapinfo.Do "Update " & name_table1 & " Set " & colam & " = """ & Left(st, Len(st) - 1) & """ where RowId = " & i_RowId
Exit Sub
1:
End Sub
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
FedorinoFF



Зарегистрирован: 01.02.2007
Сообщения: 272
Откуда: Санкт-Петербург

СообщениеДобавлено: Ср Авг 03, 2016 12:23 am    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

посмотрите в сторону update column
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Top.Mail.Ru