Найдено 212 результатов
- Пт 20 ноя 2015 16:50
- Форум: Universal Data Access Components
- Тема: Assert при Refresh после Post
- Ответы: 5
- Просмотры: 5267
Re: Assert при Refresh после Post
Мы уже пофиксили данный баг. Данное исправление войдет в следующий билд UniDAC.
- Ср 28 окт 2015 11:16
- Форум: MySQL Data Access Components
- Тема: поиск по нескольким полям
- Ответы: 7
- Просмотры: 19935
Re: поиск по нескольким полям
Вы можете задавать вопросы на английском языке на нашем англоязычном форуме: http://forums.devart.com/
- Ср 28 окт 2015 10:21
- Форум: MySQL Data Access Components
- Тема: поиск по нескольким полям
- Ответы: 7
- Просмотры: 19935
Re: поиск по нескольким полям
Да, вы правы: при использовании свойства TMyQuery.Filter клиент вычитывает все данные, удовлетворяющие запросу, и фильтрация происходит локально, а при использовании свойства TMyQuery.FilterSQL фильтрация происходит на стороне сервера. Вопрос по использованию индексов не относится к функциональности MyDAC. Для его решения, пожалуйста, обратитесь к документации MySQL сервера: http://www.mysql.ru/docs/man/MySQL_indexes.html
- Вт 27 окт 2015 16:48
- Форум: MySQL Data Access Components
- Тема: поиск по нескольким полям
- Ответы: 7
- Просмотры: 19935
Re: поиск по нескольким полям
Индексы сервера используются для сортировки и поиска данных на стороне сервера автоматически, например, при выполнении запроса с конструкциями WHERE, ORDER BY, и т.д. Поэтому при использовании свойство TMyQuery.FilterSQL индексы будут использоваться на стороне сервера. Клиент же не может использовать индексы сервера. Таким образом, при использовании локальной фильтрации мы не используем индексы сервера.bex007 писал(а):как работает filter с index ?
- Вт 27 окт 2015 15:52
- Форум: MySQL Data Access Components
- Тема: поиск по нескольким полям
- Ответы: 7
- Просмотры: 19935
Re: поиск по нескольким полям
Вы привели работоспособное применение локальной фильтрации на клиенте. Обратите внимание, при использовании локального фильтра с сервера вычитываются все данные и только после этого происходит локальная фильтрация на клиенте. Вы можете использовать свойство TMyQuery.FilterSQL, чтобы использовать фильтрацию на стороне сервера. В этом случае, при открытии набора данных, условие фильтра будет добавлено к сгенерированному запросу и только необходимое количество записей будет возвращено.bex007 писал(а):Это правилная решения?
Код: Выделить всё
try myquery1.Filtered:=true; myquery1.Filter:=''; if edit1.Text<>'' then begin myquery1.Filter:=' id='''+edit1.text+''' '; end; if edit2.Text<>'' then begin if myquery1.Filter='' then myquery1.Filter:=' username='''+edit2.Text+''' '; if myquery1.Filter<>'' then myquery1.Filter:=myquery1.Filter+ ' and username='''+edit2.Text+''' '; end; myquery1.close; myquery1.SQL.Clear; myquery1.SQL.Text:='SELECT * FROM users'; myquery1.Open; except on E: exception do showmessage(E.Message); end; myquery1.Refresh; MyDataSource1.DataSet.Refresh; DBGrid1.Refresh;
- Пн 05 окт 2015 09:39
- Форум: MySQL Data Access Components
- Тема: Lst connection ->connect=erorr
- Ответы: 5
- Просмотры: 20069
Re: Lst connection ->connect=erorr
1. Чтобы использовать обработчик события OnConnectionLost, вы должны добавить модуль MemData в раздел uses Вашего модуля.
2. В вашем примере неправильно определен созданный вами обработчик события OnConnectionLost. Вам следует заменить:
на:
);
и соответственно:
на:
3. В процедуре TForm1.FormCreate вам следует присвоить обработчику события OnConnectionLost компонента TMyConnection созданный вами обработчик:
st;
Для корректного использования обработчика событий OnConnectionLost Вам следует изменить свой пример следующим образом:
2. В вашем примере неправильно определен созданный вами обработчик события OnConnectionLost. Вам следует заменить:
Код: Выделить всё
procedure MyDB1ConnectionLost(Sender: TObject);
Код: Выделить всё
procedure MyDB1ConnectionLost(Sender: TObject; Component: TComponent;
ConnLostCause: TConnLostCause; var RetryMode: TRetryMode
и соответственно:
Код: Выделить всё
procedure TForm1.MyDB1ConnectionLost(Sender: TObject);
begin
RetryMode = rmReconnectExecute;
end;
Код: Выделить всё
procedure TForm1.MyDB1ConnectionLost(Sender: TObject; Component: TComponent;
ConnLostCause: TConnLostCause; var RetryMode: TRetryMode);
begin
RetryMode = rmReconnectExecute;
end;
Код: Выделить всё
MyDB1.OnConnectionLost := MyDB1ConnectionLo
Для корректного использования обработчика событий OnConnectionLost Вам следует изменить свой пример следующим образом:
Код: Выделить всё
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, DBAccess, MyAccess, MemDS, MemData;
type
TForm1 = class(TForm)
MyDB1: TMyConnection;
Myq1: TMyQuery;
Myq2: TMyQuery;
Mys1: TMyDataSource;
Mys2: TMyDataSource;
DBGrid1: TDBGrid;
DBGrid2: TDBGrid;
procedure FormCreate(Sender: TObject);
procedure FormClick(Sender: TObject);
procedure MyDB1ConnectionLost(Sender: TObject; Component: TComponent;
ConnLostCause: TConnLostCause; var RetryMode: TRetryMode);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
//MyDB1.LoginPrompt := False;
MyDB1.OnConnectionLost := MyDB1ConnectionLost;
MyDB1.Options.LocalFailover:=True;
MyDB1.Options.Charset := 'cp1251';
MyDB1.Server := '4.101.152.112';
MyDB1.Port := 3306;
MyDB1.Database := 'v91490ey_video';
MyDB1.Username := 'v91490ey_video';
MyDB1.Password := '455555';
try
MyDB1.Open
except
ShowMessage('Не удалось установить соединение');
Exit;
end;
Myq1.Open;
Myq2.Open;
end;
procedure TForm1.FormClick(Sender: TObject);
begin
MyDB1.Open
end;
procedure TForm1.MyDB1ConnectionLost(Sender: TObject; Component: TComponent;
ConnLostCause: TConnLostCause; var RetryMode: TRetryMode);
begin
RetryMode = rmReconnectExecute;
end;
end.
- Чт 02 июл 2015 10:46
- Форум: Universal Data Access Components
- Тема: unidac storedprocedure вызов процедуры mysql
- Ответы: 3
- Просмотры: 4091
Re: unidac storedprocedure вызов процедуры mysql
Рады слышать, что проблема решена.
Обращайтесь к нам, если у Вас возникнут вопросы по UniDAC.
Обращайтесь к нам, если у Вас возникнут вопросы по UniDAC.
- Вт 30 июн 2015 11:31
- Форум: MySQL Data Access Components
- Тема: Как добавить Progressbar?
- Ответы: 1
- Просмотры: 14701
Re: Как добавить Progressbar?
Данный вопрос не относится к MyDAC функциональности. Для его решения, пожалуйста, обратитесь к документации Embarcadero.
- Вт 30 июн 2015 11:30
- Форум: Universal Data Access Components
- Тема: unidac storedprocedure вызов процедуры mysql
- Ответы: 3
- Просмотры: 4091
Re: unidac storedprocedure вызов процедуры mysql
К сожалению, мы не смогли воспроизвести проблему.
Пожалуйста, проверьте воспроизводится ли проблема на нашем UniDacDemo проекте, на вкладке 'Working with components\StoredProc'. Этот проект можно найти в папке в папке 'Demos\UniDacDemo' относительно пути, куда были проинсталлированы демо проекты UniDAC.
Пожалуйста, проверьте воспроизводится ли проблема на нашем UniDacDemo проекте, на вкладке 'Working with components\StoredProc'. Этот проект можно найти в папке в папке 'Demos\UniDacDemo' относительно пути, куда были проинсталлированы демо проекты UniDAC.
- Чт 25 июн 2015 10:47
- Форум: MySQL Data Access Components
- Тема: Как сделать запрос с динамическими переменными?
- Ответы: 9
- Просмотры: 23378
Re: Как сделать запрос с динамическими переменными?
Данный вопрос относится к функциональности FastReport, а не к MyDAC. Для его решения, пожалуйста, обратитесь к документации FastReport.
- Вт 23 июн 2015 10:33
- Форум: MySQL Data Access Components
- Тема: Искаженное сообщение об ошибке 10061
- Ответы: 5
- Просмотры: 18128
Re: Искаженное сообщение об ошибке 10061
Новый билд MyDAC с исправлением некорректного отображения сообщения об ошибке о невозможности подключения к MySQL серверу доступен для скачивания.
- Вт 23 июн 2015 09:29
- Форум: MySQL Data Access Components
- Тема: Как сделать запрос с динамическими переменными?
- Ответы: 9
- Просмотры: 23378
Re: Как сделать запрос с динамическими переменными?
Данный вопрос относится построению архитектуры вашего приложения, а не к MyDAC функциональности. Для его решения, пожалуйста, задайте соответствующий вопрос на профильных форумах.
- Вт 23 июн 2015 09:28
- Форум: MySQL Data Access Components
- Тема: zerofill не работает
- Ответы: 3
- Просмотры: 14705
Re: zerofill не работает
Вы нашли правильное решение для корректного вывода zerofill int поля.
- Ср 17 июн 2015 09:58
- Форум: MySQL Data Access Components
- Тема: Как сделать запрос с динамическими переменными?
- Ответы: 9
- Просмотры: 23378
Re: Как сделать запрос с динамическими переменными?
Обращайтесь к нам, если у Вас возникнут вопросы по MyDAC.
- Вт 16 июн 2015 12:07
- Форум: MySQL Data Access Components
- Тема: Как сделать запрос с динамическими переменными?
- Ответы: 9
- Просмотры: 23378
Re: Как сделать запрос с динамическими переменными?
Прошу прощение за неточность в примере приведенном в предыдущем посте. Для корректной работы примера, пожалуйста, замените строку
на следующую
Код: Выделить всё
MyQuery1.SQL.Text := MyQuery1.SQL.Text := 'UPDATE tickets SET status = 1 WHERE seat IN (&ARRAY)';
Код: Выделить всё
MyQuery1.SQL.Text := 'UPDATE tickets SET status = 1 WHERE seat IN (&ARRAY)';