powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / прилинковка таблиц
12 сообщений из 12, страница 1 из 1
прилинковка таблиц
    #32799644
Димасик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Народ

Вопрос: раньше прилинковывал таблицы к базе используя

Код: plaintext
Call RelinkTable("c:\baza.mdb", sTableArray)

СВозникла необходимость прилинковывать таблицы с другого компьютера, соотв. указываю имя компьютера:

Код: plaintext
Call RelinkTable("\\dima\c\baza.mdb", sTableArray)

Результат - время прилинковки возросло с 2-3 сек до 20 сек, и это при том что база с таблицами и база с кодом находится на одном компьютере

Подскажите, может есть какой то другой синтаксис обращения к компьютеру в сети? Как сократить время прилинковки??

Спасибо заранее
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32799671
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пропустил вероятно ,с какой версии Access появилась подпрограммка RelinkTable ?
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32799971
Димасик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня Access 2003, но relinktable это функция

Может кто все-таки знает ответ на мой вопрос, аа?

Спасибо заранее
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32800012
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Димасикно relinktable это функция
Я не берусь отлаживать функцию не глядя. Могу только предположить, что ошибка в ее пятой строке, в 11-м символе.
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32800030
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДимасикУ меня Access 2003, но relinktable это функция

Может кто все-таки знает ответ на мой вопрос, аа?

Спасибо заранее
1 те же вежливо намекнули ,что relinktable самописная
2 откуда компик узнаёт IP адрес Димы - т.е. как устроена сеть ты не написал
3 напиши \\192.168...\share - посмотри скорость
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32800154
Димасик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Намек понял

Вот такая функция, мне на форуме же ее и подсказали


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Dim j As Integer, oldConnectString
Dim dbs As Database
Dim tdf As TableDef
Dim lngX As Long

RelinkTable = False

Set dbs = CurrentDb
(sTableArray) +  1 
lngX =  0 

For j = LBound(sTableArray) To UBound(sTableArray)

Set tdf = dbs.TableDefs(sTableArray(j))

If Len(tdf.Connect) >  0  Then
oldConnectString = tdf.Connect
tdf.Connect = ";DATABASE=" & sBase
tdf.RefreshLink
End If
lngX = lngX +  1 
Next

RelinkTable = True

RelinkTable_exit:

dbs.Close
SysCmd acSysCmdClearStatus

Exit Function

Попробовал

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim sTableArray( 7 ) As String
sTableArray( 0 ) = "facturas"
sTableArray( 1 ) = "facturas_references"
sTableArray( 2 ) = "invoices"
sTableArray( 3 ) = "invoices_references"
sTableArray( 4 ) = "invoices_categories"
sTableArray( 5 ) = "pagare_operations_facturas"
sTableArray( 6 ) = "bank_operations_facturas"
sTableArray( 7 ) = "balances"
Call RelinkTable("\\192.168.1.104\c\baza.mdb", sTableArray)

Время прилинковки не уменьшилось

Спасибо заранее
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32800165
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в чем собственно беда ?

Обычно связь с таблицами устанавливается при первом старте приложения на новом месте. Потом достаточно проверить select (*) from table. Можно в цикле по всем таблицам. А за 30 секунд на форме-заставке что-нибудь красивое по таймеру изображать.

Вообще разделенные таблицы в MDB по скорости работы - караул. Надо человеческий ADP делать.
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32800192
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист-Любитель
Вообще разделенные таблицы в MDB по скорости работы - караул. Надо человеческий ADP делать.
1 мдя - любитель однако
скорость у линкованных таблиц может быть в разы выше сиквела,падают чаще и правами не порулить.
2 а когда руками перелинковываешь - скорость какая ?
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32800439
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> скорость у линкованных таблиц может быть в разы выше сиквела

Громко, с надрывом: НЕ ВЕРЮ!
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32801763
borisb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая проблема...
У меня клиентская часть аж ~10 мин. "перелинковывается" по UNC-пути ("\\..."), хорошо что хоть не часто ее меняю :). Таблиц там больше сотни...

Выход действительно в использовании хотябы "виртуального" драйва - сетевого диска, смапированного заранее. Т.е. путь "x:\..." будет быстрее при прочих равных(*) чем "\\...".

(*): Можно создать VLAN'ы(**) по 1 клиенту и серверу в каждом, таким образом избежать опроса сети и "не тыкаться" во все порты на коммутаторах/хабах...

(**): Если, конечно, и карточки клиентов, и сетевое активное оборудование, и сама карточка в сервере поддерживают создание VLAN'ов, но... это разговор другой тематики, но выйти из ситуации таким способом можно ;)

P.S.: Я не сделал у себя путь типа "x:\..." по причине "псевдонедоступности" сетевого ресурса с таблицами :) - чтобы через проводник не шастали туда лишний раз...
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32801791
borisb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще на скорость той же перелинковки заметно влияет "занятость" самой табличной части (к чему линкуешься), т.е. сидят/работают с ней или нет... Но и архитектура сети тоже немаловажна
...
Рейтинг: 0 / 0
прилинковка таблиц
    #32801934
sraider
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДимасикНарод

Вопрос: раньше прилинковывал таблицы к базе используя

Код: plaintext
Call RelinkTable("c:\baza.mdb", sTableArray)

СВозникла необходимость прилинковывать таблицы с другого компьютера, соотв. указываю имя компьютера:

Код: plaintext
Call RelinkTable("\\dima\c\baza.mdb", sTableArray)

Результат - время прилинковки возросло с 2-3 сек до 20 сек, и это при том что база с таблицами и база с кодом находится на одном компьютере

Подскажите, может есть какой то другой синтаксис обращения к компьютеру в сети? Как сократить время прилинковки??

Спасибо заранее

Видимо, к этому файлу подключены другие пользователи. Как сократить время прилинковки?? Перейти с Microsoft Jet на SQL Server.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / прилинковка таблиц
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]