Spalax |
Отправлено: 15.02.2006, 08:28 |
|
Не зарегистрирован
|
Прошу простить если задаю глупые вопросы но у меня стала проблема. МНе нужно с помощью С++Builder Соединиться с базой MYsql и всё ето происходит в Винде .... подскажите есть ли какая нить библиотека для етого .. или что нить подобное ? |
|
olegenty |
Отправлено: 15.02.2006, 08:40 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
1. компоненты прямого доступа, например MyDAC
2. ODBC драйвер (сторонний) + ADO (входит в BCB)
3. dbExpress драйвер (сторонний) + компоненты (входят в BCB)
Отредактировано olegenty — 15/02/2006, 09:41
|
|
Guest |
Отправлено: 15.02.2006, 09:03 |
|
Не зарегистрирован
|
QUOTE (olegenty @ 15/02/2006, 08:40) | 1. компоненты прямого доступа, например MyDAC
2. ODBC драйвер (сторонний) + ADO (входит в BCB)
3. dbExpress драйвер (сторонний) + компоненты (входят в BCB) |
Ето конечно зхорошо но он не соединяет и говорит что не может найти библиотеку libmysql.h может кто подскажет как мне соединиться с базой плиззз |
|
olegenty |
Отправлено: 15.02.2006, 09:08 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
может ты для начала опишешь, КАК ты пытаешься соединиться?
|
|
Guest |
Отправлено: 15.02.2006, 09:18 |
|
Не зарегистрирован
|
QUOTE (olegenty @ 15/02/2006, 09:08) | может ты для начала опишешь, КАК ты пытаешься соединиться? |
Вообщем всё очень просто беру я компонент SQLConnection там выбераю базу данных мускла после чего ввожу там все параметры типа логина праоля базы сервера.... с тем что оно от меня треболвало я разобрался ... а вот теперь он просто всё время говорит что у меня не правильный логин и пароль хотя ПХП май админ подключаеться с етим логином и паролем на ура .... но есть ещё одна пробьлема у меня мускул стоит не на своем стандартном порту тоесть (3306) а на один порт выше тоесть (3307) я думаю что именно из за етого проблема потому что я думаю сишный компонент не сканит же все порты на присутствие мускла ... покрайней мере я так думаю ... может кто подскажет ? |
|
olegenty |
Отправлено: 15.02.2006, 09:20 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
почитай инфу по конкретному DBX драйверу. где-то в параметрах соединения должно быть возможным указывать и порт тоже.
|
|
Guest |
Отправлено: 15.02.2006, 09:25 |
|
Не зарегистрирован
|
QUOTE (olegenty @ 15/02/2006, 09:20) | почитай инфу по конкретному DBX драйверу. где-то в параметрах соединения должно быть возможным указывать и порт тоже. |
Да нигде в параметрах нету такого понятия как порт .... я пробовал выставлять в таком виде типа ServerName=localhost:3307 но тупо ноль на масу таколе впечатление что он соединяеться с базой данных и действительно не правильный логин и пароль .ю.. но етого просто быть не может ... я тут же подключаюсь чере командную строку ... с теми же Логином и паролем и всё окей .... а етот компонент тупо не может и всё |
|
spiller |
Отправлено: 01.07.2006, 00:07 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
Всем привет!
Я также решил поближе познакомится с ADO, а именно на примере MySQL.
Скачал ,значит я драйвер, MySQL ODBC 3.51, установил его благополучно.
Далее когда пытаюсь настроить свойство ConnectionString компонента TADoConnection, то когда мне требуется выбрать поставщика OLE DB, то там я записи MySQL ODBC 3.51 не наблюдаю.
Пробовал насильно выставить так:
[CODE]
"DRIVER={MySQL ODBC 3.51 Driver};SERVER=data.domain.com;PORT=3306;DATABASE=myDatabase; USER=myUsername;PASSWORD=myPassword;OPTION=3;"
[CODE]
Тоже не выходит:"Источник данных не найден или не указан драйвер, используемый по умолчанию"
Что самое интересно, в SQL ADministrator использую пункт меню OBject->ODBC Administrator, мне без проблем удается создать источник данных!
Хелп ми плиз! |
|
olegenty |
Отправлено: 01.07.2006, 07:39 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
провайдером должен быть выбран "OLE DB Provider for ODBC Drivers"
|
|
spiller |
Отправлено: 01.07.2006, 13:22 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
Спасибо! |
|
spiller |
Отправлено: 01.07.2006, 17:31 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
Снова проблема, на это раз покруче:
Делаю всё так, как господин olegenty "прописал".
При формировании строки подключения хочу проверить соединения. Получаю ошибку:
Ошибка связи с данными Microsoft
Текст ошибки: Не выполнена проверка подключения из-за ошибки при инициализации поставщика. Критический сбой.
Раз 15 уже переустанавливал mysql. Столько же раз ребутался., толку — 0.
Опять очень рассчитываю на вашу помощь!
Отредактировано spiller — 01/07/2006, 17:31 |
|
olegenty |
Отправлено: 03.07.2006, 07:12 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
1. Ставишь ODBC-драйвер MySQL
2. Создаёшь ODBC-источник данных MySQL, ссылающийся на твою БД
3. В программе, для TADOConnection при формировании строки подключения выбираешь в качестве Provider "OLE DB Provider for ODBC Drivers" (вкладка 1)
4. На вкладке 2 выбираешь СВОЙ созданный источник данных п. 2.
Всё, если ты не сделал ошибок — будет работать.
Да, и не изобретай велосипед, написуя свой редактор для формирования строки подключения. среди функций для работы с ADO имеет место функция PromptDataSource, правда, она не документированная, зато работает как надо. Используется так:
CODE |
Connection->ConnectionString = PromptDataSource(reinterpret_cast<unsigned int>(Handle),
Connection->ConnectionString);
|
Отредактировано olegenty — 03/07/2006, 08:17
|
|