Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ошибка при работе с Mysql 5 [MySQL]


Страницы:   1 2

Квэнди ©   (2006-05-06 16:21:00) 

Здравствуйте.
Проблема в следующем :
использую dbexpress, подключение к серверу проходит нормально, запрос выполняется, но любой попытке обратиться к полученным данным выдается ошибка.
Вот код:
q1.SQL.Add('select * from user');
q1.Active:=true;
showmessage(inttostr(q1.RecordCount));

Ошибка:
"dbexpress Error: [0x0003]: Invalid Field Type

Использую Delphi 2006.


Johnmen   (2006-05-06 16:52:00) [21]

Понятно.
Дело в том, что TSQLQuery является "держателем" однонаправленного набора данных. А значит операции типа RecordCount к нему неприменимы!


Квэнди   (2006-05-06 16:45:00) [22]

Johnmen ©   (06.05.06 16:42) [3]
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, DBXpress, FMTBcd, StdCtrls, DB, SqlExpr;

type
 TForm1 = class(TForm)
   SQLConnection1: TSQLConnection;
   q1: TSQLQuery;
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
q1.SQL.Clear;
q1.SQL.Add('select * from user');
q1.Active:=true;
showmessage(inttostr(q1.RecordCount));
end;

end.


object SQLConnection1: TSQLConnection
   ConnectionName = '1'
   DriverName = 'Mysql'
   GetDriverFunc = 'getSQLDriverMYSQL'
   LibraryName = 'dbxmys30.dll'
   LoginPrompt = False
   Params.Strings = (
     'DriverName=Mysql'
     'HostName=10.1.1.121'
     'Database=mysql'
     'User_Name=root'
     'Password='
     'BlobSize=-1'
     'ErrorResourceFile='
     'LocaleCode=1251'
     'Compressed=false'
     'Encrypted=false'
     'LoginPrompt=false')
   VendorLib = 'libmysql.dll'
   Connected = True
   Left = 112
   Top = 16
 end
 object q1: TSQLQuery
   MaxBlobSize = -1
   Params = <>
   SQLConnection = SQLConnection1
   Left = 200
   Top = 16
 end


Johnmen   (2006-05-06 16:42:00) [23]

Что такое q1? Его параметры?
Какие DB Aware'ные компоненты навешаны, их настройка?


Квэнди   (2006-05-06 16:38:00) [24]

Ega23 ©   (06.05.06 16:24) [1]
обижаешь)


Ega23   (2006-05-06 16:24:00) [25]

А свойство SQL перед этим очистил?  :о)


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо