Метод TransferDatabase (где указать пароль?)

Настаев
Дата: 04.01.2012 15:37:18
Мне нужно в автомакросе сделать автолинковку таблиц

DoCmd.TransferDatabase acLink, "Microsoft Access", имя_файла, acTable, "таблица такая-то", "таблица такая-то"

Всё работает, но с проблемами:
- если таблица уже существует, то создаётся новая с циферкой. Например "таблица1"
- если база-источник зашифрована, то где указать пароль?
WRX
Дата: 04.01.2012 16:52:59
Настаев, я делал так:
1) вначале проверяется наличие таблицы
2) если таблицы нет, то линкуем
Настаев
Дата: 04.01.2012 17:22:36
ну с этим я справлюсь: я просто буду удалять таблицу перед линковкой...

Хотя это будет не совсем правильным. Я хочу посоветоваться.
Есть БД, разделённая на 2 части: с кодом и с таблицами (типичная ситуация)
Я хочу, чтобы она работала не зависимо от размещения в файловой системе
Может быть есть возможность проверить в существущей таблице адрес, на который она ссылается: если он не тот, то удалить таблицу и линковать заново.

А на счёт пароля мне тоже хотелось бы получить ответ...
ё
Дата: 04.01.2012 18:13:37
Настаев
ну с этим я справлюсь: я просто буду удалять таблицу перед линковкой...

Хотя это будет не совсем правильным. Я хочу посоветоваться.
Есть БД, разделённая на 2 части: с кодом и с таблицами (типичная ситуация)
Я хочу, чтобы она работала не зависимо от размещения в файловой системе
Может быть есть возможность проверить в существущей таблице адрес, на который она ссылается: если он не тот, то удалить таблицу и линковать заново.

А на счёт пароля мне тоже хотелось бы получить ответ...

изучайте ))
http://www.sql.ru/forum/afsearch.aspx?s=connect+refreshlink+pwd&submit=%CD%E0%E9%F2%E8&bid=4
Анатолий ( Киев )
Дата: 04.01.2012 19:19:43
Настаев
если таблица уже существует, то создаётся новая с циферкой. Например "таблица1"
А вы чего хотели? Так и должно быть.

Настаев
если база-источник зашифрована, то где указать пароль?
"зашифрована" или запаролена? А разве TransferDatabase не запрашивает пароль на БД?

Удаление/создание новых таблиц/изменение пути в связанных таблицах надо делать при помощи DAO или ADOX. Там и пароль в строке подключения можно указать.
Настаев
Дата: 05.01.2012 13:01:01
С линковкой я разобрался

tdf.Connect = "MS Access;PWD=321;DATABASE=" & CurrentProject.Path & "\base_be.accdb"


Всем спасибо за участие в теме
Настаев
Дата: 05.01.2012 13:04:42
Нет, извините, не разобрался
Connect всё коннектит, только во время открытия таблиц, программа ругается: "Не верно указан праоль"
Я указывал простые цифры 321 для проверки и всё равно не пашет

А метод Transfer не предлагает ввести пароль
Анатолий ( Киев )
Дата: 05.01.2012 15:56:17
Настаев

tdf.Connect = "MS Access;PWD=321;DATABASE=" & CurrentProject.Path & "\base_be.accdb"

1. Если вы интерактивно подключитя таблицу, то что у вас в св-ве Connect?
2. Этот код для вновь создаваемой таблицы? Если нет, то еще нужен метод RefreshLink.
Настаев
Дата: 05.01.2012 17:08:06
Это код для существующей таблицы
На счёт RefreshLink я не знал. Теперь использую
Но при задании пароля в базе-источнике всё равно не работает
K-Nick
Дата: 25.03.2015 16:54:58
Пароль должен быть не длиннее 13 символов.
192028