Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > MySQL+Builder C++


Автор: Dmi3ev 20.4.2009, 17:41
подключаю через АДО к мускулу, и выдает ошибку: Поставщик данных или другая служба вернули состояние E_Fail.
причем, эта ошибка сначала не вылетала, когда бд была пуста. но после того, как я вручную добавил туда записей стала вылетать... причем, я их удалил, но один х.. не хочет работать.
В чем дело? программно ничего не делаю, просто пытаюсь у Тэйбла выставить Актив=тру.

Автор: Rodman 20.4.2009, 17:52
http://forum.vingrad.ru/act-Search/CODE/show/searchid-2338b8c7408bf5ba448a917924d30bf2/search_in-posts/result_type/topics/flag/search/highlite/e_fail/index.html

ну ADO я точно не рекомендую юзать с мускулом..

попробуй dbExpress...

а лучше http://forum.vingrad.ru/forum/topic-242773/hl/e_fail/index.html

Автор: Dmi3ev 20.4.2009, 18:09
Цитата

попробуй dbExpress...

я не знаю где должна быть libmysql.dll... он мне выдает, что не найдена, куда я ее не пихаю... я хз... подскажи тогда как???

Автор: Rodman 20.4.2009, 18:12
http://forum.vingrad.ru/forum/topic-161981.html

Автор: Dmi3ev 20.4.2009, 18:24
спасибо, скачал для 5 версии, а че дальше делать??? я туплю))) хелп...

Автор: Rodman 20.4.2009, 18:26
там написано куда положить...

а дальше традиционно - при помощи dbExpress... конектишься, работаешь

Автор: Dmi3ev 20.4.2009, 18:29
Цитата

там написано куда положить...

я че-то не нарыл, если нетрудно, покажи невнимательному и тугому)))

Автор: Rodman 20.4.2009, 18:32
http://forum.vingrad.ru/forum/topic-161981.html#

Автор: Dmi3ev 20.4.2009, 18:42
Rodman, короче, объясняю, что я делаю, так вот:
1) скачал сначала архив, который выложил ты, потом скачал дополнения товарища, которые по его словам он забыл тебе передать...
2) запихнул все это в диру с прогой, и все...
что не так??? чего я не понял???

Добавлено через 45 секунд
все, только взял libmysql.dll (свой рабочий), и из архива тоже пробовал... что делать???

Автор: Rodman 20.4.2009, 18:50
у тя трабла вылетает или шо?

Автор: Dmi3ev 20.4.2009, 18:52
unable to load libmysql.dll

Добавлено @ 18:53
при попытке выставить у дбэкспресс конекшн коннектед=тру

Автор: A5uKa 20.4.2009, 18:53
Цитата

Поставщик данных или другая служба вернули состояние E_Fail.


попробуй на другой БД в мускуле... 

а также 

Цитата

В чем дело? программно ничего не делаю, просто пытаюсь у Тэйбла выставить Актив=тру. 


Не используй Table , лучше Query...

Цитата

ну ADO я точно не рекомендую юзать с мускулом..


почему это ?


Автор: mrbrooks 20.4.2009, 19:02
Dmi3ev, если ты скачал дистрибутив с офф. сайта библа должна быть рабочая. Сидит она понятное дело в корне самого Мускула. Не знаю пробывал ли ты - но скопируй ее в каталог Bin самого Бормана или же в System32 самой винды. Должно заработать и при наличие этой библиотеки в папке с exe-шником. Грубо говоря в операционной системе должен быть путь в переменных средах к этой библиотеке.


Цитата(A5uKa @  20.4.2009,  18:53 Найти цитируемый пост)
Не используй Table , лучше Query...

Очень субъективное мнение. Тем более здесь это не поможет  smile 

Автор: Dmi3ev 20.4.2009, 19:25
Цитата

скопируй ее в каталог Bin самого Бормана или же в System32 самой винды.

не айс, все равно пишет, что не может ее загрузить, хотя мускул работает... в чем может быть причина???

Добавлено через 2 минуты и 14 секунд
Цитата

Не используй Table , лучше Query...

не айс

Добавлено через 2 минуты и 33 секунды
Цитата

попробуй на другой БД в мускуле...

не айс

Автор: Rodman 20.4.2009, 19:29
в свойствах конекшина есть поле... там и пропиши прямой путь

Автор: Dmi3ev 20.4.2009, 19:30
а может быть ошибка из-за того, что я под рутом пока???

Добавлено через 1 минуту и 57 секунд
Цитата

в свойствах конекшина есть поле... там и пропиши прямой путь 

в свойствах конекшина чего??? я уже тут столько перепробовал компонентов, какой именно???

Автор: A5uKa 20.4.2009, 19:33
Цитата(mrbrooks @ 20.4.2009,  19:02)
Очень субъективное мнение. Тем более здесь это не поможет  

У меня работала...  не очень и субъективное smile

Код

ADOQuery1->SQL->Add("select *from table1 where name=:param1");
ADOQuery1->Open();


и всё...

Автор: Dmi3ev 20.4.2009, 19:34
компоненты MyDAC коннектятся на раз два, только так... но они платные...

Добавлено через 3 минуты и 11 секунд
ок, тогда вопрос такой, какие траблы будут, если я буду использовать мудак, те при каких условия будет выдаваться сообщение??? и будет ли оно выдаваться вобще??? просто на моем компе он дает запускать экзешник, а на других даст???

Добавлено через 4 минуты и 16 секунд
 smile 
други мои, прошу не начинать обсуждать, что лучше, что хуже, помогите мне законнектится как-нибудь, а потом уже можно и обсудить, что да как...

Автор: Rodman 20.4.2009, 19:41
Цитата(Dmi3ev @  20.4.2009,  19:30 Найти цитируемый пост)
в свойствах конекшина чего??? я уже тут столько перепробовал компонентов, какой именно???

TSQLConnection
поле VendorLib

Автор: Dmi3ev 20.4.2009, 19:41
Цитата

и будет ли оно выдаваться вобще??? 

да, на другом компе траблы... попробовал...

Автор: A5uKa 20.4.2009, 19:42
Цитата

ок, тогда вопрос такой, какие траблы будут, если я буду использовать мудак, те при каких условия будет выдаваться сообщение??? и будет ли оно выдаваться вобще??? просто на моем компе он дает запускать экзешник, а на других даст???


Проблема с платными компонентами вылетит только на Лицензировании программы (In My Humble Opinion)
(мб на другом компе mysql по другому настроен...)

п.с.  smile  ок, но это был совет, а у твоего компонента название страшное

Автор: Dmi3ev 20.4.2009, 19:44
Цитата

TSQLConnection
поле VendorLib 

указал полный путь к файлу (рабочему), все равно выдает ошибку... что за хня, ведь через мудак работает, значит можно ее законнектить... что не так???

Добавлено через 1 минуту и 28 секунд
Цитата

ок, но это был совет, а у твоего компонента название страшное

я сначал написал, а потом заметил))) бывает... но из песни слов не выкинешь)))

Автор: Rodman 20.4.2009, 19:48
трабла может быть что DLL не подходит для твоего делфи...

так что попробуй другую

Автор: Dmi3ev 20.4.2009, 19:59
и так все по порядку
АДО
1) когда я конекчусь, ничего в таблице при этом нет (только что создал), то все ок
2) добавляю туда запись, ручками, программно, неважно, после этого и появляется вот это сообщение (Поставщик данных или другая служба вернула E_FAIL)
3) удаляю все записи, но уже ничего не меняется, ошибка все равно вылетает
Если с дб експреесс
1) не находит эту либу и все тут...
MYDAC
1) все ок, но платные...

Автор: Rodman 20.4.2009, 20:02
а AnyDac?

Автор: Dmi3ev 20.4.2009, 20:05
Цитата

а AnyDac? 

не пробовал, ща...

Автор: A5uKa 20.4.2009, 20:08
дай настройки ado connect и mysql ...

Автор: Rodman 20.4.2009, 20:08
так же - ZeosDBO 

Автор: Dmi3ev 20.4.2009, 20:26
у коннекшн:
Код

Provider=MSDASQL.1;Persist Security Info=False;User ID=root;

мускул:

Автор: A5uKa 20.4.2009, 20:58
SQLConnection1->ConnectionName=mysqll;
SQLConnection1->DriverName=MySQL;
SQLConnection1->GetDriverFunc=getSQLDriverMYSQL;
SQLConnection1->LibaryName=dbexpmysql.dll;

мож через эту dll ?

и...

А ты после изменений ADOTable/ADOQuery обновлял? 

попробуй ->close ->open ещё...

п.с. одно из первых в поиске по ЭТОМУ же форуму
http://forum.vingrad.ru/forum/topic-242773/unread-1.html

Автор: Dmi3ev 20.4.2009, 21:25
Цитата

мож через эту dll ?

не канает...
Цитата

А ты после изменений ADOTable/ADOQuery обновлял?

ошибку, говорю, выдает потом, даже если я не запуская прогу пытаюсь выставить у ADOTable Актив=тру... а ошибку я привел выше...

Неужели никто на шестерке не работал с мускулом стандартными средствами???
Билдер 6
Мускул 5.0.67
Драйверы ОДБС версия 5.1
Сам по себе мускул рабочий, на пхп работал с ним да и работаю
через платные компоненты коннект идет, через бесплатные никак...
что делать???

Автор: vikaz 20.4.2009, 21:38
Когда я работал с Мускулом через ADO никаких проблем небыло. Как делал я.
1. Ставил Мускул
2. Ставил Connector/ODBC (http://dev.mysql.com/downloads/connector/odbc/5.1.html)
3. Заходим в администрирование->Источники данных (ODBC)->Позьзовательский DSN->Добавить->MySQL ODBC 5.1 Driver
 Появляется окно MySQL Connector/ODBC Data Source Configuration
 Я у себя поля забиваю так, у тебя естественно будет немного по другому
 - Data Sourse Name: vikaz
 - Description: vikaz
 - Server: localhost
 - Port: 3306
 - User: root
 - Password: *****  ( smile )
 - Database: its
 После чего жмем на кнопку тест после чего появляется сообщение, что все нормал.

Заходим в проект (я пишу на 2009) 
 1. Берем на закладке dbGo TADOConnection и TADOQuery, из DATA Access берем TDataSourse, из Data Control берем TDBGrid.
 2. Связываем компоненты между собой.
 3. В TADOConnection проваливаемся в ConnectionString->Use Connection String->Build->Подключение->Использовать имя источника данных: vikaz->Введите начальный каталог: its. Жмем на Проверка подключения, пишет ОК!
 4. AdoQuery1->SQL, Забиваем строку select * from its
И все работает.
Только замечу, таблица должна иметь кодировку UTF8_BIN.

Автор: vikaz 20.4.2009, 21:38
Если база имеет кодировку cp1251_bin, то будут появляться ошибка E_FAIL. Покрайне мере у меня так! smile

Автор: Dmi3ev 20.4.2009, 22:50
Цитата

Если база имеет кодировку cp1251_bin, то будут появляться ошибка E_FAIL. Покрайне мере у меня так!

Цитата

Только замечу, таблица должна иметь кодировку UTF8_BIN.

спасибо, вроде пока работает! твою мать, сидел целый день, пытался сделать... всегда обидно, когда косяк, типа этого... ведь по сути, если знаешь и сталкивался, то это кажется, что само собой разумеется, а если как я (не знал, не сталкивался, на пхп все нормально с этой кодировкой)
Поставил бы тебе 9999999.......... плюсов, если бы это было возможно  smile 
Как же я рад!!! А то уже хотел бубен идти новый покупать, один уже сломал  smile 
 smile 
Ну ничего, за то на гитаре ДДТ играл целый день, а так бы руки не дошли, прогал бы... Короче все зачипись)))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)