powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
19 сообщений из 19, страница 1 из 1
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507125
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно столкнулся с проблеммой быстродействия.
Всё тормозит капитально.
В наборе из 2000 записей поиск по индексированному полю около минуты.

Кто-то сталкивался с подобным?
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507190
Была схема SyBase ODBC Access 97 Давно правда, компы послабже были, но тормоза примерно в том же духе, бороться с этим практически не реально, да и ресурсов по времени не мало, проще на MSDE мигрировать и АДР.
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507195
Dyadya Zed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Впервые вижу живого человека, у которого эта связка работает :) Поделишься подробностями? Какой размер базы, были ли проблемы с переносом? Сколько пользователей? Есть проблемы с блокировками, используешь ли транзакции?

По поводу вопроса, скорее всего надо оптимизировать запрос. Есть хорошая утилита для отладки запросов, входит в состав MS SQL server... ODBC debugger или что-то в этом духе..
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507281
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Dyadya Zed

По поводу разработки:
трёх звенная архитектура,
запись только по схеме Access-API-MySQL.
Чтение напрямую.
БД пока только в разработке, сейчас размер около 10 мег.
в табл. записей порядка 10000.
Почти всё работает нормально (все списки имеют ограничение на кол-во отображаемых записей - типа серверный фильтр). Здесь всё ок.
Но есть "большие" списки, в которых надо производить поиск.
Вот здесь спотыкаюсь.

По поводу запроса:
на самом деле запрос мне не нравится, смысл в чём:
есть табл Product, есть допустим табл. Purchase, надо отобразить весь список продуктов + кол-во продуктов по каждой позиции конкретного заказа.
В одну инструкцию SQL загнать это не могу (может кто знает как?)

делаю через доп. запрос:
q1: SELECT * FROM Purchase WHERE PurchaseID=1

Результирующий запрос:
SELECT Product.*
FROM Product LEFT JOIN q1 ON Product.ProductID = q1.ProductID

Может в синтаксисе что не так?
А вообще хотелось бы всё уместить в 1 инструкции, но не знаю как.
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507344
Фотография schakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А так разве не работает?
Код: plaintext
1.
2.
3.
4.
SELECT Product.*, Purchase.*
FROM Product LEFT JOIN Purchase 
ON Product.ProductID = Purchase.ProductID 
WHERE Purchase.PurchaseID= 1 
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507381
думается
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если это списки (нередактируемые наборы записей), то они должны быть "запросами к серверу". Это (в общем случае) быстрее, чем через jet (хотя, вроде бы, jet пытается в простых запросах работать "на стороне сервера").

Да, и в твоем случае, сдается, ты получаешь на клиента полный набор запроса1, а уж этот (уже "аксессовский", джетовский) набор вяжешь с серверным по джойну. Что всегда жутко подтормаживает.

И не вредно отключить регистрацию лога ОДБСей, который на больших объемах тормозит конкретно.
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507523
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 schakh
Эта инструкция выведет только те продукты, которые есть в заказе, а надо ВЕСЬ список продуктов + кол-во в конкретном заказе.

2 думается
По поводу запросов к серверу - я их везде и использую.
вернее там, где только возможно.

По поводу джойнов:
а как ещё? MySQL не поддерживает View, а 1 запросом у меня не получается.

Я не знаю что такое "регистрацию лога ОДБСей", где это можно увидеть и как отключить?
или это трассировка ODBC?

2 ALL
Может ещё кто-то знает как сделать запрос одной инструкцией, вложенные селекты какие?
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507591
думается
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT Product.*, Purchase.*FROM Product LEFT JOIN Purchase ON Product.ProductID = Purchase.ProductID WHERE Purchase.PurchaseID=1 OR Purchase.PurchaseID IS NULL;

(или как там в MySQL PurchaseID=NULL ?)

по поводу вложенных селектов, наскоко помню, читал, что MySQL не шибко их поддерживает. (не знаю, не ввязывался, что там с уровнем вложенности Селектов и возможности их вложения в любую ли часть инструкции Select)

а лог ODBC - либо трассировка, либо еще крыжик(и) (или имя файла лога/логов) в настройках драйвера ОДБС, если предусмотрен производителем. В общем случае возможно несколько видов лога.
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507608
Фотография schakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот только нарисовал, в Аксесе прокатывает
Код: plaintext
1.
2.
3.
SELECT Product.*, Purchase.* FROM Product 
LEFT JOIN Purchase ON ((Product.ProductID = Purchase.ProductID) 
 AND (Purchase.PurchaseID= 1 ))
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507680
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 schakh
Да, действительно инструкция работает! большое спасибо,
только результирующий набор не обновляемый, а мне нужен обновляемый, что бы пользователь смог цифры вносить в грид

2 думается
Этот селект я тоже хотел использовать, но в результате мы получаем список товаров, которые есть в этом заказе и нет в других заказах, т.е. все товары, оторые были в других заказах - не отображаются, хотя результирующий набор обновляемый.

с вложенными селектами да, попробовал на mysql 4 - не поддерживает.

так что вопрос висит...

может ещё какие идеи?
бьюсь уже неделю, пробовал и через временные табл, и... как только не пробовал - не получается
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507753
Kimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Была у меня такая работающая схема - правда через промежуточные таблицы .... а что делать в Мае вроде другого выхода нет - в крайнем случае раньше не было ...
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507797
???
1. "запросы к серверу" не обновляемы в принципе, если я правильно помню. (но зато выполняются полностью на сервере, а обновления можно производить через рекордсеты ODBCDirect. Хотя, может быть я уже не в теме.) Видимо про "запросы к серверу" был явный гон.

2. Запросы с внешним объединением при отсутствии ключа на внутренней стороне связи (по полям связи) могут оказаться необновляемыми (если не включить несогласованное обновление) т.н. Динамический набор (несогл.)

3. Про "пробывал" явное вранье. видимо пропустил OR ... IS NULL. Результат должен быть тем же, что у schakh, но во первых, отображаться в конструкторе и обновляться. (что еще можно наврать, не представляю)

4. в запросе schakh выставь несогласованный динамический набор (сначала выставь - в конструкторе, а потом напиши конструкцию в режиме SQL)
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507854
Фотография schakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 думается

автор3. Про "пробывал" явное вранье. видимо пропустил OR ... IS NULL. Результат должен быть тем же, что у schakh, но во первых, отображаться в конструкторе и обновляться. (что еще можно наврать, не представляю)

Ничего личного, но попробуйте сами, - результат тот о котором говорил AlTis
Я - пробовал, получил, что получил:

авторсписок товаров, которые есть в этом заказе и нет в других заказах, т.е. все товары, оторые были в других заказах - не отображаются, хотя результирующий набор обновляемый.
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507893
AlTis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во первых я не вру, пробую, смотрю, потом пишу
автор1."запросы к серверу" не обновляемы в принципе, если я правильно помню. (но зато выполняются полностью на сервере, а обновления можно производить через рекордсеты ODBCDirect. Хотя, может быть я уже не в теме.) Видимо про "запросы к серверу" был явный гон.

А кто говорит, что обновляются запросы к серверу? Я этого не говорил. Проверял твою инструкцию на Access – всё в точности так как я и говорил – нет товаров, позиции которых есть в других заказах. Могу выложить пример.

Вот по поводу «а обновления можно производить через рекордсеты ODBCDirect» с удовольствием бы послушал как это можно сделать.
Я же помощи прошу, а не придумываю что-то.

автор
4. в запросе schakh выставь несогласованный динамический набор (сначала выставь - в конструкторе, а потом напиши конструкцию в режиме SQL)


Спасибо, действительно надо было выставить несогласованный набор. Что-то я запамятовал.

Но результат тот же. при редактировании ячейки "кол-во" - висим около 30 сек. Потом в ячейке отображается введённое число, следующий ввод - без тормозов. Видимо Access строит индексы? т.к. если я перехожу к последней записи - сначало большой тормоз - потом, при редактировании - всё моментально.

Запрос красивый построили, теперь бы ещё и от тормозов уйти :)
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32507970
думается
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ок. Приведите наборы данных, для которых результаты выборок различаются. Пока все остальное голословно. (на моих наборах все работает монояйственно, да и физ смысл выборок, по крайней мере навскидку, один и тот же). Насчет "пробовать самому" - "всегда!" (с Ильф и Петров). Т.ч. суньте данный аргумент по известному адресу.
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32508005
Фотография schakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот прицепил
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32508030
думается
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну и?
Как я и писал. Все одно-наково
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32508033
Фотография schakh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Вас Vilka не видна
...
Рейтинг: 0 / 0
Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
    #32508045
думается
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"Я был не прав. Вспылил" ((с) АссА)


таки да, невнимательность меня подвела. Вспоминается, что при константах в правых/левых объединениях джет вел себя не лучшим образом. (тут надо поискать по форуму)
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Связка MySQL+ODBS+Access2000 - Кто нибудь так работет??? Отзовитесь!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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