![]() |
|
Модераторы: Akina |
![]()
|
|
| Atna |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 5.5.2004 Репутация: нет Всего: нет |
попробую сформулировать в чем проблема:
Мне необходимо подключить связанные таблицы базы на MS SQL Server 2000, не прописывая источник данных в ODBC. Это все получается. Но т.к. мне нужно выводить какие-то данные в формах, я сделала копии связанных таблиц -> локальные таблицы Я знаю один способ их заполнить:
Но поскольку таблиц, которые нужно заполнить, несколько, такое заполнение слишком медленное. Вопрос: Есть ли какой-нибудь способ сделать заполнение таблиц быстрее? Или можно ли подключить связанные таблицы таким образом, чтобы выполнить запрос следующего вида (GroupsTMP - локальная таблица, Groups - связанная)
а с описанным выше способом подключения такой запрос не выполняется заранее спасибо за подсказку Это сообщение отредактировал(а) Akina - 15.12.2008, 18:36 |
||||
|
|||||
| bopoha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1283 Регистрация: 10.5.2006 Где: Беларусь, Минск Репутация: 21 Всего: 21 |
Скопировать все записи с SQL Server можно создав хранимый запрос к этому серверу (намного быстрее чем связанная таблица!) и использовать его в качестве источника данных в запросе на добавление. Но я не уверен что так будет намного быстрее. Скорость работы можно увеличить если отключить индексы, но это возможно для SQL Server, а не для Access (синтаксис сильно урезан и я не встречал такой возможности).
Вы рассматривали разработку программы как Access Project? Он как раз предназначен для работы напрямую с SQL Server. Это сообщение отредактировал(а) bopoha - 15.12.2008, 18:25 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Модератор: Используйте тег "Код".
Добавлено через 5 минут и 8 секунд
Можно полюбопытствовать, откуда такая экзотическая надобность? -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Atna |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 5.5.2004 Репутация: нет Всего: нет |
Интерфейс к базе, который я делаю, будет размещен на неопределенном количестве компьютеров. Чтобы не бегать и не прописывать везде источник данных в ODBC, я решила поступить таким образом.
|
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
А создать его программно религия не позволяет?
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Atna |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 5.5.2004 Репутация: нет Всего: нет |
просто не умею. Подскажите как? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
См. справку по Workspace.OpenDatabase и далее.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Atna |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 5.5.2004 Репутация: нет Всего: нет |
Спасибо. Ничего не получается. Соединение по коду:
происходит только в том случае, если прописан DSN. Это сообщение отредактировал(а) Akina - 16.12.2008, 13:08 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Во-первых, можно таскать DSN вместе с приложением. Во-вторых, это обычный текстовый файл, и его можно тупо создать при старте. В третьих, никто не мешает вместо использования DSN-файла записАть в соединение строку инициализации. В четвёртых, используя тег "Код", надо смотреть, какой тип кода применяете. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| bopoha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1283 Регистрация: 10.5.2006 Где: Беларусь, Минск Репутация: 21 Всего: 21 |
Atna, Используйте функцию RegisterDatabase для создания ODBC DSN. В результате строка подключения может свестись к "ODBC;DSN=MyDsn;". Весьма удобно использовать в хранимых запросах к серверу.
|
|||
|
||||
| Atna |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 5.5.2004 Репутация: нет Всего: нет |
Спасибо за помощь
|
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Собсно параметры RegisterDatabase абсолютно те же, что прописываются в свойствах Connection, если не использовать DSN -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| bopoha |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1283 Регистрация: 10.5.2006 Где: Беларусь, Минск Репутация: 21 Всего: 21 |
Akina, Connection чего?
Если хранимого запроса, то да. Для DAO без ODBC DSN не хотело вроде бы работать. Но могу ошибасть давно было. Но как показала практика, в хранимых запросах удобнее прописать DSN один раз и только , чем базу, пользователя и пароль. Atna, "Все решенья хороши выбирай на вкус." Это сообщение отредактировал(а) bopoha - 16.12.2008, 17:15 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Workspace.Database.Connection, что же ещё... Однозначно... но чтобы выбирать, надо иметь выбор -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
![]()
|
| Правила форума "MS Access" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MS Access | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |