MySQL Delphi. Компоненты для работы с MySQL

Ruslan82

Premium
Joined
Feb 5, 2011
Messages
32
Reaction score
6
Друзья!

Инфы в интернете много, но времени на испробовать все категорически нет, поэтому нужна информация из опыта использования различных компонентов в делфи для работы с MySQL. Компонентов я видел много, хотелось бы инфа типа "работал с UniDAC поменял на MyDAO и все полетело, или наоборот, или не полетело, скорость не изменилась, но работает стабильнее и возможностей больше.

Есть софт который разработали и продаем и стала задача перевести его с Access на более серьезную базу. Полгода тестили Postgre но она КРАЙНЕ медленная, когда дело заходит про апдейт таблиц с индексами, нужно удалять индексы и делать другие подпорки, может заодно, чтобы не плодить тем, посоветуете и на счет MySQL, чтобы не терять еще полгода, может с ней такие же косяки, хотя плотно работал с нею лет 5 назад и таких проблем не было замечено. Платные БД изначально не рассматриваются, но может тот же Firebird или Interbase будет с делфи работать быстрее чем MySQL. Речь о работе с таблицами, содержащими 1-10 млн. записей.

Спасибо всем заранее!
 

LeshaRB

Staff member
Premium
Joined
Jun 11, 2007
Messages
319
Reaction score
451
Location
Минск
Друзья!

Инфы в интернете много, но времени на испробовать все категорически нет, поэтому нужна информация из опыта использования различных компонентов в делфи для работы с MySQL. Компонентов я видел много, хотелось бы инфа типа "работал с UniDAC поменял на MyDAO и все полетело, или наоборот, или не полетело, скорость не изменилась, но работает стабильнее и возможностей больше.

Есть софт который разработали и продаем и стала задача перевести его с Access на более серьезную базу. Полгода тестили Postgre но она КРАЙНЕ медленная, когда дело заходит про апдейт таблиц с индексами, нужно удалять индексы и делать другие подпорки, может заодно, чтобы не плодить тем, посоветуете и на счет MySQL, чтобы не терять еще полгода, может с ней такие же косяки, хотя плотно работал с нею лет 5 назад и таких проблем не было замечено. Платные БД изначально не рассматриваются, но может тот же Firebird или Interbase будет с делфи работать быстрее чем MySQL. Речь о работе с таблицами, содержащими 1-10 млн. записей.

Спасибо всем заранее!
Ты думаешь на уровне MySQL инедксов нет?

Скорее всего в твоем случае компоненты не помогут
У вас неправильно организована структур БД
 

Ruslan82

Premium
Joined
Feb 5, 2011
Messages
32
Reaction score
6
индексы есть везде, в Access тоже, 2 аналогичные таблицы в аксес и потсгре, содержат одинаковые индексы и 100 000 товаров. в аксесе update выполняется 10 сек, в постгре - 10 минут, если удалить индексы - 5 сек. с базами и структурой базы все нормально. Я собираюсь использовать UniDAC, но может есть лучше компоненты для работы с MySQL
 

LeshaRB

Staff member
Premium
Joined
Jun 11, 2007
Messages
319
Reaction score
451
Location
Минск
индексы есть везде, в Access тоже, 2 аналогичные таблицы в аксес и потсгре, содержат одинаковые индексы и 100 000 товаров. в аксесе update выполняется 10 сек, в постгре - 10 минут, если удалить индексы - 5 сек. с базами и структурой базы все нормально. Я собираюсь использовать UniDAC, но может есть лучше компоненты для работы с MySQL
Не может быть такого

Я когда раньше использовал SQLDirect
 

Ruslan82

Premium
Joined
Feb 5, 2011
Messages
32
Reaction score
6
Не может быть такого

Я когда раньше использовал SQLDirect

да, я тоже начитался перед выбором постгри какая она крутая, а потом гуглил по поводу update - у всех так, все пишут что это нормально, постгре в общем когда делаешь update table set field = 1 where code = 2 - обновляет индексы каждую запись! т.е. если запросом должно обновиться 100 записей то она обновляет индекс 100 раз... жесть, причем даже если индексные поля не используются в запросе. и типа кто как рекомендует, кто типа через временную таблицу обновлять, кто индексы удалять
 

Mironico

Member
Joined
Apr 14, 2008
Messages
13
Reaction score
0
но может тот же Firebird или Interbase будет с делфи работать быстрее чем MySQL
По любому.
Сам юзаю птичку уже 13 лет.
FibPlus (VCL) сейчас тоже бесплатный, деврейс его в народ отдала.
Единственное чего не хватает - встроенной репликации.
Но, говорят, в 4 версии будет.
 

algin

New member
Joined
Nov 21, 2016
Messages
3
Reaction score
0
Location
Москва
Не может быть такого
Очень даже может быть, если update делать на всю таблицу... А нужно апдейтить только выделенную запись.
 

j1981

Member
Joined
Sep 4, 2008
Messages
9
Reaction score
2
Age
53
Absolute Database
"Description
-----------

With AbsoluteDatabase you can forget the Borland Database Engine (BDE) .
Absolute Database is the compact, high-speed, robust and easy-to-use database engine.
With Absolute Database you will not need special installation and configuration,
it compiles right into your EXE.
Make your application faster and smaller with Absolute Database!

Key Features:

· No BDE; no DLLs
· SQL'92 (DDL & DML) support
· Single database file
· Unmatched ease-of-use
· 100% compatibility with standard DB-aware controls
· Strong encryption
· BLOB compression
· Full source code available
· Royalty-free
"
 

yyjksw

Member
Joined
Jul 17, 2008
Messages
20
Reaction score
6
1. fireBird: There is a strong but inconvenient use. Encryption and more ...
2. NexusDB: Powerful, fast and reliable, but slow for networking. Supported by Unidac.
3. AbsoluteDatabase: Similar to NexusDB, but with a slightly lower overall score.
4. DBISAM: It's easy to write and share, but I'm a bit nervous now.
 

Ruslan82

Premium
Joined
Feb 5, 2011
Messages
32
Reaction score
6
и как остальные, кроме файрберд из списка, справятся с 10 млн записей в таблице?
 

stan_uz

Member
Joined
Oct 22, 2013
Messages
9
Reaction score
1
Если в планах использовать MySQL то лучше сразу использовать MyDAC.

Добавлено через 2 минуты
индексы есть везде, в Access тоже, 2 аналогичные таблицы в аксес и потсгре, содержат одинаковые индексы и 100 000 товаров. в аксесе update выполняется 10 сек, в постгре - 10 минут, если удалить индексы - 5 сек. с базами и структурой базы все нормально. Я собираюсь использовать UniDAC, но может есть лучше компоненты для работы с MySQL

А в чем именно причина такого поведения? Не ужели обновление индекса занимает столько времени? Есть структура таблицы? А триггеры используются?
 
Last edited by a moderator:

oakrom

Member
Joined
Aug 2, 2014
Messages
20
Reaction score
4
Не давно тоже стояла задача переделать БД коммерческого проекта под MySql, попробовал использовать стандартные компоненты доступа FireDAC. Вроде нормально работает никто пока не жаловался из клиентов. :) Со всеми стандартными компонентами (dbGrid, dbEdit и т.д.) работает весьма слажено.
 

Beast_Power

Premium
Joined
Apr 29, 2014
Messages
61
Reaction score
39
I use Zeoslib with MySql Server running on a raspberry Pi and it runs superfast over a lan connection.
 

S_Gur

Premium
Joined
Feb 26, 2007
Messages
38
Reaction score
5
Age
56
Location
Moscow
Долгое время работал через ADO, несколько лет назад перешел на UniDAC. Ни в первом, ни во втором случае никаких проблем при работе с MySQL не наблюдалось. А вообще, многое зависит от распределения бизнес-логики между клиентом и сервером. Если как можно больше бизнес-логики выносить в хранимые процедуры, триггеры и представления, то интерфейс доступа к базе играет минимальное значение.
 

S_Gur

Premium
Joined
Feb 26, 2007
Messages
38
Reaction score
5
Age
56
Location
Moscow
Месяца два-три назад, когда переходил на Rad Studio Starter, перещупал все библиотеки для работы с базами данных, до которых мог дотянуться. Пришел к выводу, что лучше UniDAC на сегодняшний день ничего нет. Во всяком случае, нет ничего удобнее и безпроблемнее
 

Alitrun

New member
Joined
Mar 23, 2017
Messages
4
Reaction score
0
Ребят, а под Android есть вариант для работы с MySQL? На Android нет драйвера для MySQL и FireDac там с MySQL не работает.
 

LeshaRB

Staff member
Premium
Joined
Jun 11, 2007
Messages
319
Reaction score
451
Location
Минск
Ребят, а под Android есть вариант для работы с MySQL? На Android нет драйвера для MySQL и FireDac там с MySQL не работает.

А зачем на андроиде БД хранить?
 
Top