Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> 2 базы данных, разные технологии 
V
    Опции темы
kapbepucm
Дата 19.7.2007, 12:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: нет
Всего: 12



Есть *.mdb. Там, через TransferDatabase импортирует в себя таблицы из *.adp. При этом стирается текущая и заменяется на новую. Грамотно ли это?
Есть желание импортировать в себя, но в фаил EXCEL'a. Есть ли способ отключать связь с EXCEL'ом LinkTable кроме как стирания?
А может вообще лучше внедряться в MS SQL Server, без посреднечества *.adp (из *.mdb)?

Это сообщение отредактировал(а) kapbepucm - 19.7.2007, 12:36


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 19.7.2007, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Помню старый шютк...

- Скажите, как правильно заваривать кофе, как делаю я, или как моя подруга?
- Вы делаете правильно. И она делает правильно. А еще есть много других правильных способов заваривать кофе.

Так вот - каждый из описанных способов имеет право на существование. Есть еще несколько способов получить для обработки данные с MS SQL сервера. Однако какие из способов в каждом конкретном случае "не идиотские", какие разумны и какой из них оптимален - определяется конкретной задачей и обрамляющими условиями.

Посему на твой вопрос невозможно дать осмысленный ответ.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 20.7.2007, 09:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: нет
Всего: 12



OK, перефразирую:
Есть довольно "тормознутая" база данных готовый проект- складская система учёта, расположенная на MS SQL сервере (клиент *.ade). Пользователи к ней привыкли- от них её не оторвать. Какие-то отчёты умеет делать. Шеф данной конторы- человек торопливый и хочет получать нестандартные запросы и быстро. Короче моя примочка (*.mdb) работает во много раз быстрее, хотя требует постоянных обновлений данных. Хочу посмотреть как другие варианты будут работать. Задача- обновление данных. Конкретно хочу знать:
-есть ли способ отключать связь с EXCEL'ом LinkTable кроме как стирания
-как увидеть в *.mdb таблицу из MS SQL сервера (инфу читал, но на деле выдаёт ошибки)

Это сообщение отредактировал(а) kapbepucm - 20.7.2007, 09:21


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 20.7.2007, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(kapbepucm @  20.7.2007,  10:20 Найти цитируемый пост)
есть ли способ отключать связь с EXCEL'ом LinkTable кроме как стирания

Нет. Попытка переписать связь на несуществующий файл приведет к ошибке. Но почему бы не открывать на тот же файл коннет программно? через Jet...

Цитата(kapbepucm @  20.7.2007,  10:20 Найти цитируемый пост)
как увидеть в *.mdb таблицу из MS SQL сервера

Через соотв. ODBC-драйвер. Построй UDL при помощи ДатаВизарда.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
bopoha
Дата 22.7.2007, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

Репутация: 21
Всего: 21



Самый быстрый способ получить данные с сервера:
1. Хранимый запрос к серверу (только на чтение)
2. Программно ADO, DAO (чтение и запись). Рекомендую ADO.

Медленный:
1. Хранимая таблица, тип ODBC.

Виды строк подключения тут:
http://www.codeproject.com/database/connec...LE%20DB%20MySQL
http://www.connectionstrings.com/

Рекоменду создавать программно ODBC DSN (см. RegisterDatabase). И его использовать для подключения. Этим самым добавится простота строки подключеня как для запроса (ODBC;DSN=имя) так и при програмном доступе к данным (DAO = "ODBC;DSN=имя", ADO = "DSN=имя").
PM MAIL WWW ICQ Skype GTalk   Вверх
kapbepucm
Дата 23.7.2007, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: нет
Всего: 12



Код

Public Sub Proba()
  Dim wrk As Workspace
  Set wrk = CreateWorkspace("My_Workspace", "admin", "", dbUseODBC)
  Dim con As Connection
  Set con = wrk.OpenConnection("Connection1", dbDriverNoPrompt, True, "Driver={SQL Server};Server=REX\JUMIS;Trusted_Connection=no;Database=Kemira2007;Uid=User012;Pwd=mypassword;")
  con.Close
  wrk.Close
End Sub

Пишет: invalid argument в OpenConnection

Цитата(bopoha @  22.7.2007,  19:51 Найти цитируемый пост)
Хранимый запрос к серверу (только на чтение)

А это где (не могу наити)?

Использую Access2000, MS SQL Server 2000
Эти ошибки отбивают желание разрабатывать дальше smile

Это сообщение отредактировал(а) kapbepucm - 23.7.2007, 09:29


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
Akina
Дата 23.7.2007, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(kapbepucm @  23.7.2007,  10:13 Найти цитируемый пост)
invalid argument в OpenConnection

Несомненно. Connection, ADODB.Connection и DAO.Connection - вещи разные. Ты же пытаешься смешать все в кучу...

Цитата(kapbepucm @  23.7.2007,  10:13 Найти цитируемый пост)
А это где (не могу наити)?

Только через ADO. Более того, хоть он и будет в БД, но через окно БД ты его увидеть не сможешь...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
kapbepucm
Дата 23.7.2007, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 993
Регистрация: 14.6.2007
Где: Латвия

Репутация: нет
Всего: 12



Хорошо, путь следования понятен. Оказывается все просто (и скорость меня устраивает):
Код

Dim con As New ADODB.Connection
Dim rst As New ADODB.Recordset
con.Open "Driver={SQL Server};Server=REX\JUMIS;Trusted_Connection=no;Database=Kemira2007;Uid=User012;Pwd=mypassword;"
rst.Open "StoreDocType", con, adOpenDynamic, adLockReadOnly
MsgBox rst![TypeName]
rst.Close
con.Close

bopoha, Akina спасибо!

Это сообщение отредактировал(а) kapbepucm - 27.7.2007, 12:13


--------------------
(С) kapbepucm
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS Access"
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Access | Следующая тема »


 




[ Время генерации скрипта: 0.0514 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.