Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / прилинковка таблиц / 12 сообщений из 12, страница 1 из 1
25.11.2004, 14:03:34
    #32799644
Димасик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прилинковка таблиц
Народ

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

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

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

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

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

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

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

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

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

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

Спасибо заранее
1 те же вежливо намекнули ,что relinktable самописная
2 откуда компик узнаёт IP адрес Димы - т.е. как устроена сеть ты не написал
3 напиши \\192.168...\share - посмотри скорость
...
Рейтинг: 0 / 0
25.11.2004, 16:54:48
    #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
25.11.2004, 17:00:20
    #32800165
Программист-Любитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прилинковка таблиц
А в чем собственно беда ?

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

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

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

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

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

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

P.S.: Я не сделал у себя путь типа "x:\..." по причине "псевдонедоступности" сетевого ресурса с таблицами :) - чтобы через проводник не шастали туда лишний раз...
...
Рейтинг: 0 / 0
26.11.2004, 15:54:34
    #32801791
borisb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
прилинковка таблиц
Еще на скорость той же перелинковки заметно влияет "занятость" самой табличной части (к чему линкуешься), т.е. сидят/работают с ней или нет... Но и архитектура сети тоже немаловажна
...
Рейтинг: 0 / 0
26.11.2004, 16:50:48
    #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
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / прилинковка таблиц / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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