Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибки при попытке подключения к MySQL. 
:(
    Опции темы
Mal Hack
Дата 15.11.2004, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: нет
Всего: 261



Цитата
В кмком модуле у тебя находятся компоненты доступа к БД? В каком участке кода пояляется AccessVioletion? Не в OnCreate главного модуля?

Все объекты создаются в главном модуле. При OnActivate.
AccessViolation появляется именно на Open у SQLDataSet.
Цитата
Тебе нужно тут продублировать одинарные ковычки:

Там не ковычки, а ` (буква Ё, где ). Синтаксис MySQL такую запись спокойно пропускает.
Да и Делфи не ругается...

Если что, сюда скинул исходники (152 кила) http://mal-hack.net/delphi.rar
PM ICQ   Вверх
Mal Hack
Дата 18.11.2004, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: нет
Всего: 261



Решение нашел...
1. Без использования dbExpress, а с использованием специальных классов TMySQLClien & TMySQLResult.
2. Все эти файлы ( файл приаттачит Secandr (90 кил)) надо положить либо в папку с проектом, либо в <Delphi_dir>/lib.
3. Код:
Сразу говорю, показал только основные моменты. Код, для определения ошибок и т.п. писать не стал.
Код

uses
  .....
 uMysqlClient, uMysqlCT, uMysqlErrors, uMysqlHelpers, uMysqlNet, uMysqlNewPassword, uMysqlSSL, uMysqlVio;

type
 ...
   procedure QueryData( Query : string); // Результирующий запрос (заносим данные в таблицу)
   procedure QueryNoData( Query : string ); // insetrt, delete - нет полученны данных
 ...

var
  ...
 SQLConnection     : TMysqlClient; // Объявляем переменную для соединения.
 Grid              : TStringGrid;
  ...

implementation
....

// Установка соединения
SQLConnection := TMysqlClient.Create;
 with SQLConnection do
  begin
   Host      := 'localhost';
   User      := 'root';
   Password  := '';
   Db        := 'mysql';

  try
   connect;
  Except On Exception Do
   begin
     Application.MessageBox( 'К сожалению, соединиться с MySQL-сервером не удалось. Проверьте правильность ввода всех параметров.' , 'Ошибка соединения' , 0 );
    exit;
   end;
  end;
 end;

// Выполнение запроса:

procedure TMainForm.QueryData( Query : string );
var
mysql_result : TMySQLResult;
i , j : integer;
OK : boolean;
begin
OK := true;

try
 mysql_result := SQLConnection.query( Query , true , OK );
Except On Exception Do
 begin
  Application.MessageBox( 'Запрос не выполнилс.' , 'Ошибка соединения' , 0 );
  exit;
 end;
end;

with Grid do
 begin
  ColCount := mysql_result.FieldsCount;
  RowCount := mysql_result.RowsCount+1;

  if RowCount = 1 then
   FixedRows := 0
  else
   FixedRows := 1;

  for i := 0 to mysql_result.RowsCount - 1 do
   for j := 0 to mysql_result.FieldsCount do
    begin
     Cells[ j , i + 1 ] := mysql_result.FieldValue( j );
     mysql_result.Next;
    end;
 end;

mysql_result.free;
end;

procedure TMainForm.QueryNoData( Query : string );
begin
// Аналогично предыдущей процедуре, без внесения данных в таблицу. для запросов Insert, Update .....
end;



PM ICQ   Вверх
Secandr
Дата 18.11.2004, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: нет
Всего: 39



zlib

Присоединённый файл ( Кол-во скачиваний: 108 )
Присоединённый файл  zlib.rar


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
Secandr
Дата 18.11.2004, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: нет
Всего: 39



mysql

Присоединённый файл ( Кол-во скачиваний: 127 )
Присоединённый файл  mysql.rar


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
Mal Hack
Дата 31.1.2005, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: нет
Всего: 261



Сорри, забыл отписаться о логической ошибочке.
В цикле занесеня данны в GRID вместо:
Код

 for i := 0 to mysql_result.RowsCount - 1 do
  for j := 0 to mysql_result.FieldsCount do
   begin
    Cells[ j , i + 1 ] := mysql_result.FieldValue( j );
    mysql_result.Next;
   end;

Надо
Код

 for i := 0 to mysql_result.RowsCount - 1 do
  begin
   for j := 0 to mysql_result.FieldsCount do
    Cells[ j , i + 1 ] := mysql_result.FieldValue( j );

    mysql_result.Next;
   end;

Т.е. переход на новую запись должен осуществляться после того, как пройдет цикл по полям текущей записи.
PM ICQ   Вверх
Cetus
Дата 12.3.2005, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 18.4.2004

Репутация: нет
Всего: 1



Все должно работать без кавычек, по крайней мере с MySQL 4.0.2

Mal Hack, ты пробовал блокировать таблицы в своем проекте с DbExpress? (lock table tableOne write; unlock tables)
--------------------
Легко внести изменения в код.Трудно сделать это корректно.
PM MAIL   Вверх
Mal Hack
Дата 12.3.2005, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: нет
Всего: 261



Цитата(Cetus @ 12.3.2005, 00:40)
Все должно работать без кавычек, по крайней мере с MySQL 4.0.2

Какие ковычки? smile

Цитата(Cetus @ 12.3.2005, 00:40)
Mal Hack, ты пробовал блокировать таблицы в своем проекте с DbExpress? (lock table tableOne write; unlock tables)

Через dbExpress у меня запросы не выполнялись. Через класс TMySQLClient не пробовал.
PM ICQ   Вверх
Cetus
Дата 12.3.2005, 01:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 18.4.2004

Репутация: нет
Всего: 1



про кавычки в другой теме где то вычитал... smile
TMySQLClient из MySQL.rar который выложил Secandr?
--------------------
Легко внести изменения в код.Трудно сделать это корректно.
PM MAIL   Вверх
Mal Hack
Дата 12.3.2005, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: нет
Всего: 261



Цитата(Cetus @ 12.3.2005, 01:09)
TMySQLClient из MySQL.rar который выложил Secandr?

Ага.
PM ICQ   Вверх
Bars_rb
Дата 19.3.2007, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 24.2.2007
Где: Ташкент

Репутация: нет
Всего: нет



Хм.
Столкнулся с той же проблемой.
Стоит MySQL 5 версии.
Требует libmysql.dll.
Понапихал ее всюду, но тут сказали, что надо от третей версии.
Вопрос. Где ее взять? Не качать же ради нее весь серв. И пудет ли пахать файл от третей версии с 5 МуСКЛ-ом???
PM MAIL ICQ   Вверх
Rodman
Дата 19.3.2007, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 22
Всего: 122



Bars_rb
Цитата(Bars_rb @  19.3.2007,  15:47 Найти цитируемый пост)
libmysql.dll.

в инете свободно лежит...
PM MAIL WWW Skype GTalk YIM MSN   Вверх
Bars_rb
Дата 19.3.2007, 18:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 24.2.2007
Где: Ташкент

Репутация: нет
Всего: нет



Хм. 
Шото я найти не могу...
Мож кто поделиться либо линком, либо файлом.
PM MAIL ICQ   Вверх
B2_Russia
Дата 18.5.2007, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В доску свой :)
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 3.7.2003
Где: Тверь

Репутация: нет
Всего: 1



Народ я может темень полная, но что за zlib? Это для чего еще? Это куда? =)

Вышел на эту тему ползая по форуму в поисках принципах работы с mySQL.
Пишу программу которая будет работать в 2 вариантах - PHP и Delphi
Как Mal тоже работал раньше с мусклом только из PHP...
PM WWW ICQ   Вверх
B2_Russia
Дата 26.9.2007, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В доску свой :)
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 3.7.2003
Где: Тверь

Репутация: нет
Всего: 1



Прошло много времени...

Все уже успел успешно применить...

Написал CMS-ку на PHP, сделал клиента с использованием zlib и MySQL.zip выложенных в этом треде.
Но как только поставил CMS на хостинг, возникла проблема несовместимости версии клиента. Там требуется MySQL-клиента 4.1.18.
И все встало! Прога работает только с локальной БД всвязи с чем является бесполезной :((((((((((((((((((((((((

Как решить проблему?
PM WWW ICQ   Вверх
B2_Russia
Дата 27.9.2007, 02:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В доску свой :)
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 3.7.2003
Где: Тверь

Репутация: нет
Всего: 1



Вобщем что только не перепробовал, всеми способами одна ошибка!
Понятно что не нравится версия клиента пишет что не поддерживается протокол, я уже и 5.0 ставил и 4.1.22 MySQL!

NEED HELP!!!

Это сообщение отредактировал(а) B2_Russia - 29.9.2007, 19:26
PM WWW ICQ   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.1180 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.