C++Builder
Начало
Форум
Помощь
Войти
Регистрация
C++Builder
>
Forum
>
Вопросы программирования
>
Работа с базами данных в C++Builder
>
DBGrid&MySQL&dbExpress
Страниц: [
1
]
Вниз
Печать
Автор
Тема: DBGrid&MySQL&dbExpress (Прочитано 17482 раз)
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
DBGrid&MySQL&dbExpress
«
:
14 апреля 2007, 17:37:43 »
Итак, решил попробовать сделать программу на dbExpress.
Все вроде подрубился, но вот беда с DBGrid никак не могу вывести содержимое таблиц.
схема такая:
SQLQuery1->Connection=SQLConnection1
DataSourse1->DataSet=SQLQuery1
DBGrid->DataSourse=DataSourse1
Почему при попытке задать DBGrid->DataSourse=DataSourse1
выдается сообщение:
Operation not allowed on a unidirectional database
Записан
BadMan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 67
Re: DBGrid&MySQL&dbExpress
«
Ответ #1 :
14 апреля 2007, 18:58:09 »
dbExpress выдает, насколько я помню, только однонаправленные наборы, в которых данные можно читать последовательно, но нельзя возвратиться назад.
DBGrid - двухнаправленный контрол, в нем можно перемещаться куда угодно.
Вот он и выдает: операция несовместима.
Чтобы использовать DBgrid надо использовать компоненты с других вкладок (BDE, ADO и т.п.)
Записан
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
Re: DBGrid&MySQL&dbExpress
«
Ответ #2 :
14 апреля 2007, 21:13:14 »
Цитата: BadMan от 14 апреля 2007, 18:58:09
dbExpress выдает, насколько я помню, только однонаправленные наборы, в которых данные можно читать последовательно, но нельзя возвратиться назад.
DBGrid - двухнаправленный контрол, в нем можно перемещаться куда угодно.
Вот он и выдает: операция несовместима.
Чтобы использовать DBgrid надо использовать компоненты с других вкладок (BDE, ADO и т.п.)
Как же выводить данные из dbExpress? только используя StringGrid?
Записан
Игорюха
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 159
Творю чудеса...
Re: DBGrid&MySQL&dbExpress
«
Ответ #3 :
14 апреля 2007, 23:07:06 »
По этому dbExpress немного быстрее, что он однонаправленный... Возьникает резкая необходдимость использовать именно dbExpress? Или чисто спортивный интерес. Если второе то не заморачивайся бери ADO, BDE, ...
По-моему в однонаправленных наборах с группировкой данных касяки большие возникают, при построении отчетов столкнулся с такой проблеммой, перешел на другие компоненты, все ок стало
Записан
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
Re: DBGrid&MySQL&dbExpress
«
Ответ #4 :
15 апреля 2007, 12:52:23 »
Вообще, спортивный интерес. Но не люблю программу недоработанной оставлять.
Однако, если мне предложат связку MySQL + Builder где нужно только кинуть несколько компонентов и связать их причем стандартных, буду признателен. Просто когда-то была такая задача и решил я ее опустившись до исходных файлов MySQL. Этот вариант как мне кажется самый долгий в плане разработки.
Кстати, я с базами данных только начинаю разбираться. Правильно ли я понимаю что если использовать BDE надо будет потом его установить на комп пользователя? Схожая ли ситуация с ADO? И каковы основные отличия BDE от ADO? Понимая что этому посвящают целые статьи, хотелось бы узнать мнение специалистов в двух словах.
«
Последнее редактирование: 15 апреля 2007, 12:58:53 от khan
»
Записан
BadMan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 67
Re: DBGrid&MySQL&dbExpress
«
Ответ #5 :
15 апреля 2007, 13:07:56 »
При использовании BDE его нужно будет установить на компьютер пользователя, но это никаких проблем не составляет - установку его поддерживает installshield.
Можно не ставить его вовсе, взять только библиотеки, а настройку алиасов и баз произвести прямо из программы.
Лично я отказался от BDE по нескольким причинам:
во-первых все равно надо помнить про алиасы, дополнительные библиотеки и т.п.
во-вторых фирма Борланд объявила о прекращении поддержки данного продукта - следовательно не будет выходов под новые винды и т.п.
в-третьих на большинстве тестов BDE показало себя медленнее ADO (именно ADO я сейчас использую)
Про ADO могу сказать только, что эта штука достаточно стандартная, ничего дополнительно как правило ставить не надо, скорость вполне приемлемая (для моих задач).
Я нашел только 1 вариант, когда BDE показал скорость ощутимо выше ADO, во всех остальных проведенных мною тестах ADO был шустрее.
Записан
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
Re: DBGrid&MySQL&dbExpress
«
Ответ #6 :
15 апреля 2007, 13:12:35 »
А разве не нужно для работы с ADO искать сторонний ODBC драйвер?
Записан
BadMan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 67
Re: DBGrid&MySQL&dbExpress
«
Ответ #7 :
15 апреля 2007, 13:14:28 »
Как правило он идет в комплекте со всеми серьезными СУБД. Наиболее стандартные СУБД поддерживается непосредственно Windows.
Записан
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
Re: DBGrid&MySQL&dbExpress
«
Ответ #8 :
15 апреля 2007, 15:03:42 »
А если говорить конкретно о MySQL 5 ?
Записан
BadMan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 67
Re: DBGrid&MySQL&dbExpress
«
Ответ #9 :
15 апреля 2007, 16:23:03 »
Поройтесь в поисе - наверняка кто-то уже с этим сталкивался.
Например, тут:
http://forum.vingrad.ru/topic-140721/hl/mysql/index.html
Записан
Valdemar
Давний друг
Сказали спасибо: +60/-4
Offline
Сообщений: 285
Re: DBGrid&MySQL&dbExpress
«
Ответ #10 :
16 апреля 2007, 08:55:03 »
Я для работы с MySQL использую компоненты Zeos
http://sourceforge.net/project/showfiles.php?group_id=35994
. Кроме одной dll при распространении программы ничего не требуется.
Записан
olegenty
Администратор
Сказали спасибо: +16/-7
Offline
Сообщений: 520
Re: DBGrid&MySQL&dbExpress
«
Ответ #11 :
16 апреля 2007, 09:11:44 »
однонаправленность DBX легко преодолевается при использовании EhLib с помощью связки компонентов:
TDBXDataDriverEh + TMemTableEh + TDataSource + TDBGridEh/TDBGrid/etc
Записан
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
Re: DBGrid&MySQL&dbExpress
«
Ответ #12 :
16 апреля 2007, 11:28:08 »
Давайте все же о стандартных компонентах, насколько я понял ODBC уже поддерживается Виндой и можно используя ADO быстро начать работать с базой. Так ли это?
Записан
olegenty
Администратор
Сказали спасибо: +16/-7
Offline
Сообщений: 520
Re: DBGrid&MySQL&dbExpress
«
Ответ #13 :
16 апреля 2007, 12:09:22 »
так, ODBC поддерживался виндой всегда.
Записан
akson
новенький
Сказали спасибо: +0/-0
Offline
Сообщений: 2
Re: DBGrid&MySQL&dbExpress
«
Ответ #14 :
16 апреля 2007, 12:34:54 »
Если желаете ограничиться стандартными компонентами, тогда, работая с DBX, используйте связку TSQLQuery - TDataSetProvider - TClientDataSet - TDataSource - TDBGrid. Это решает проблему однонаправленности TSQLQuery.
Записан
ion
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 45
Re: DBGrid&MySQL&dbExpress
«
Ответ #15 :
16 апреля 2007, 12:38:57 »
Из своего опыта.
Експресс глючит под MySQL, я говорю про стандартный, про не стандартный не скажу,
так как беспланый не ставил, усть плантый, в районе 500 баксов.
Драйвер под Пятый, тоже глючный, проблемы с обработкой большой информации
с проходами, работает через кеш, и постепенно умирает ждя субмита,
отучить его так и не мог
Записан
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
Re: DBGrid&MySQL&dbExpress
«
Ответ #16 :
17 апреля 2007, 10:11:42 »
В общем из всего сказанного понимаю что использование MySQL API решает все эти проблемы. Просто на разработку мелочей уходит очень много времени, думал можно сильно сократить его используя компоненты. Но ко всему не стандартному у меня предвзятое отношение (разве что оно идет в исходных кодах и/или не внедряется в студию).
Записан
BadMan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 67
Re: DBGrid&MySQL&dbExpress
«
Ответ #17 :
17 апреля 2007, 11:47:09 »
Цитата: khan от 17 апреля 2007, 10:11:42
В общем из всего сказанного понимаю что использование MySQL API решает все эти проблемы. Просто на разработку мелочей уходит очень много времени, думал можно сильно сократить его используя компоненты. Но ко всему не стандартному у меня предвзятое отношение (разве что оно идет в исходных кодах и/или не внедряется в студию).
С этим мнением не согласятся очень многие - ведь компоненты пишутся зачастую весьма серьезными фирмами, взять, например, палитру "Стандартных" компонетов Билдера Indy. Но ведь это не Борландские компоненты, а стороннего разработчика.
Другой момент: надо очень осторожно относиться к бесплатным и очень дешевым компонентам. Закон рынка - на хорошую вещь тратится много ресурсов, поэтому она не может стоить очень дешево.
Я предпочитаю стандартные компоненты, собственные и приобретенные (скачанные) с исходниками - где в случае чего можно порыться (если время есть, конечно).
Но доля истины в этом есть: Хочешь, чтобы все было заточено под тебя - пиши сам.
Записан
Yurkins
Участник
Сказали спасибо: +36/-3
Offline
Сообщений: 368
Re: DBGrid&MySQL&dbExpress
«
Ответ #18 :
03 мая 2007, 11:25:40 »
Советую в место DBGrid+MySQL+dbExpress исполйзовать DevExpress.QuantumGrid + MySQL + MyDAC
Записан
olegenty
Администратор
Сказали спасибо: +16/-7
Offline
Сообщений: 520
Re: DBGrid&MySQL&dbExpress
«
Ответ #19 :
07 мая 2007, 22:57:50 »
2 Yurkins - это уже предлагалось выше, под эгидой EhLib
Записан
khan
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 93
Re: DBGrid&MySQL&dbExpress
«
Ответ #20 :
06 августа 2007, 10:33:31 »
После выхода новой студии RAD2007 в поставку которой входит драйвер для работы с MySQL4/5 эта тема снова становится актуальной. Кто тестировал новые драйверы? Еще интересует организация связей через MasterSource с использованием id.
«
Последнее редактирование: 06 августа 2007, 10:56:20 от khan
»
Записан
Страниц: [
1
]
Вверх
Печать
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Вопросы программирования
-----------------------------
=> Общие вопросы программирования в C++Builder
=> Программирование с FMX
=> Работа с базами данных в C++Builder
=> Windows API
=> Технологии COM/DCOM, ActiveX
=> Аспекты и идеология профессиональной разработки ПО
=> Компьютерное железо и системное администрирование
=> студенческий городок
-----------------------------
Обсуждение материалов на сайте
-----------------------------
=> Обсуждений статей на сайте
=> Обсуждение материалов из файлового архива
=> Компоненты сторонних разработчиков к С++Builder
-----------------------------
Работа сайта и новости
-----------------------------
=> Ищу/предлагаю работу
=> Новости из мира программирования
=> Новости - события календаря
=> Голосования
=> Компьютерный юмор и приколы
=> Работа сайта
=> Флейм
-----------------------------
FAQ - частозадаваемые вопросы/ответы
-----------------------------
=> FAQ, общие вопросы, посвящённые C++Builder
=> FAQ, вопросы по базам данных
=> FAQ, вопросы по компонентам