Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
Всем добрый день.
Подскажите плз - много перерыл, но не нашел ответа.
Делаю так....
На форму кидаю IBDatabase, ibTransaction, ibquery
Делаю подключение к базе , запрос - все ОК.
Теперь отключаю и включаю сервер FireBird и безуспешно пытаюсь реанимировать эту троицу...

Заранее спасибо.
25 сен 17, 13:18    [20820484]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 2062
Гость1234,

Ты наверно не у того объекта из "этой тройцы" вызываешь функцию "Реанимировать". Или передаешь параметр этой функции "ЧтобыВсёРаботало"=False, а надо True.
25 сен 17, 14:28    [20820835]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
DarkMaster
Member

Откуда: Donetsk,Ukraine
Сообщений: 5573
Гость1234,

Покажи плиз код, как ты пытаешься это сделать.
25 сен 17, 14:52    [20820956]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Любезный
Member

Откуда:
Сообщений: 421
Ты лучше сожги сервер и потом попробуй включить и подцепиться :)
25 сен 17, 15:47    [20821123]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
чччД
Guest
Гость1234
Всем добрый день.
Подскажите плз - много перерыл, но не нашел ответа.
Делаю так....
На форму кидаю IBDatabase, ibTransaction, ibquery
Делаю подключение к базе , запрос - все ОК.
Теперь отключаю и включаю сервер FireBird и безуспешно пытаюсь реанимировать эту троицу...

Заранее спасибо.

Создай минимальное приложение, повторяющее "проблему", и выложи здесь.
25 сен 17, 16:33    [20821298]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
goldmi45
Member

Откуда:
Сообщений: 880
Гость1234,

после того, как вы остановили и снова запустили сервер, вы восстановили соединение с сервером у компоненты IBDatabase?
25 сен 17, 16:48    [20821322]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
Спасибо всем за сообщение ))
Особенно любезен Любезный )))
Пишу из дома - завтра выложу код.
Я его действительно сделал отдельным, новым приложением и мусолил эти три компоненты по разному. Причем со всех сторон ))
Многое стирал и делал по новому. Почему то не нашел подобных проблем - прогуглил и данный форум и другие форумы. Конечно возможно ошибка в моем ДНК ))
В любом случае спасибо за отклики - завтра продолжу ...
25 сен 17, 17:03    [20821357]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 9742
Гость1234,

В чем проблема то?
25 сен 17, 17:48    [20821528]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 43645

_Vasilisk_
В чем проблема то?

Он же написал - в ДНК.

Posted via ActualForum NNTP Server 1.5

25 сен 17, 17:54    [20821541]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Guest7777
Guest
Возможно, ему надо обратиться к застарелым статьям "Решение проблем дисконнекта в IBX" на ibase.ru. Не удивлюсь, если там с тех пор ничего не поменялось..
25 сен 17, 18:14    [20821566]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
krapotkin
Member

Откуда: Екатеринбург
Сообщений: 525
там и не нужно ничего менять
произошел дисконнект - сам поднимай заново и коннект и запросы
25 сен 17, 22:06    [20821999]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Guest7777
Guest
Это только на совсем неискушенный взгляд. Раньше оно в подобных обстоятельствах просто не давало дальше ничего сделать (даже просто нормально завершить приложение), засыпая пачками AV.
25 сен 17, 22:19    [20822032]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
чччД
Guest
Guest7777
Это только на совсем неискушенный взгляд. Раньше оно в подобных обстоятельствах просто не давало дальше ничего сделать (даже просто нормально завершить приложение), засыпая пачками AV.

Какие тяжелые времена раньше были, смотри-ка.
25 сен 17, 23:06    [20822129]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Guest7777
Guest
Не но, возможно, кто- то обладает информацией, чтобы уверенно и компетентно подтвердить, что сейчас в IBX в этой части стало все пристойно или будет продолжатся все то же растеканье мыслею по древу?
25 сен 17, 23:24    [20822166]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
чччД
Guest
Guest7777
Не но, возможно, кто- то обладает информацией, чтобы уверенно и компетентно подтвердить, что сейчас в IBX в этой части стало все пристойно или будет продолжатся все то же растеканье мыслею по древу?


Вряд ли кто-то опишет решение так же конкретно, как ты выше описал проблему. Особенно если никто с проблемой не сталкивался.
25 сен 17, 23:32    [20822175]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Guest7777
Guest
Я не просил описывать решений (решения для прежних версий приводились в т.ч. и мной в упомянутых статьях на сайте у Кузьменко), а лишь хотел услышать от современных пользователей IBX, как оно сейчас ведет себя при потере коннекта (не исключаю, что все так же), если кто-то из по-прежнему практикующих IBX курсе. Ибо сам со временем подзабил.))
25 сен 17, 23:48    [20822202]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
YuRock
Member

Откуда: Донецк
Сообщений: 2062
Guest7777
как оно сейчас ведет себя при потере коннекта (не исключаю, что все так же)
Не знаю, что значит "все так же", но у меня на древнем D6 ведет себя абсолютно правиоьно - при потере коннекта на любое сетевое обращение выдается соотв. исключение, штатно обработав которое делаешь реконнект, переоткрываешь запросы и всё работает дальше как часы.
26 сен 17, 02:16    [20822292]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
YuRock, Guest7777 - а может дадите ссылки, где мне почитать о ваших решениях, чтобы и у меня работало как часы?
26 сен 17, 07:07    [20822341]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
Вашему вниманию текущая проба решить проблему

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, IBDatabase, StdCtrls, Buttons, Grids, DBGridEh,
  IBCustomDataSet, IBQuery;

type
  TForm1 = class(TForm)
    BitBtn1: TBitBtn;
    Edit1: TEdit;
    Edit2: TEdit;
    IBQuery1: TIBQuery;
    DBGridEh1: TDBGridEh;
    Button2: TButton;
    DataSource1: TDataSource;
    procedure ErrorRun();
    procedure BitBtn1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  tr:TIBTransaction;
  db1,db2:tibdatabase;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
 try
   db1:=TIBDatabase.Create(self);
   db1.DatabaseName:='D:\Basa\Limonad\ZULFIRA.FBD';
   db1.Params.Add('user_name=SYSDBA');
   db1.Params.Add('password=masterkey');
   db1.LoginPrompt:=false;
   db1.Connected:=true;
   edit1.Text:='run';
 except
   edit1.Text:='err';
 end;
 try
   db2:=TIBDatabase.Create(self);
   db2.DatabaseName:='D:\Basa\Ekzam\EKZM.FDB';
   db2.Params.Add('user_name=SYSDBA');
   db2.Params.Add('password=masterkey');
   db2.LoginPrompt:=false;
   db2.Connected:=true;
   edit2.Text:='run';
 except
   edit2.Text:='err';
 end;
 tr:=TIBTransaction.Create(Self);
 tr.AddDatabase(db1);
 tr.AddDatabase(db2);
 Button2Click(Sender);
end;

procedure TForm1.Button2Click(Sender: TObject);
var err:boolean;
begin
  err:=false;
  try

   tr.Active:=false;
   db2.Connected:=false;
   IBQuery1.Database:=Db2;
   IBQuery1.Transaction:=tr;
   Db1.Connected:=true;
   Db2.Connected:=true;
   tr.Active:=true;
   with IBQuery1.SQL do begin
     clear;
     Add('select * from formul');
   end;
   IBQuery1.Active:=true;
   // îáû÷íîå îòêðûòèå
  except
    err:=true;
  end;
  if err then ErrorRun;
end;

procedure TForm1.ErrorRun;
begin
  try
    IBQuery1.Close;
  Except
  end;
  try
    tr.Databases[1].CloseDataSets;
  Except
  end;
  try
    tr.RemoveDatabase(1);
  Except
  end;
  try
    db2.CloseDataSets;
  Except
  end;
  try
    db2.Connected:=false;
    //  error writing data to the connection
  Except
  end;
  try
    tr.AddDatabase(db2);
  Except
  end;


end;

end.
26 сен 17, 08:15    [20822389]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
На db1 не смотрите - "рыбу заворачивал..."
26 сен 17, 08:22    [20822399]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
Guest7777

Нашел эту статью... Попробую разобраться...
26 сен 17, 09:10    [20822489]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
DarkMaster
Member

Откуда: Donetsk,Ukraine
Сообщений: 5573
Гость1234,

Ну и зачем тебе 2 Tibdatabase?
26 сен 17, 09:35    [20822567]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
DarkMaster

А куда рыбу заворачивать?
26 сен 17, 09:38    [20822576]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
schi
Member

Откуда: Москва
Сообщений: 2218
Гость1234
Вашему вниманию текущая проба решить проблему

procedure TForm1.ErrorRun;
begin
  try
    IBQuery1.Close;
  Except
  end;
  try
    tr.Databases[1].CloseDataSets;
  Except
  end;
  try
    tr.RemoveDatabase(1);
  Except
  end;
  try
    db2.CloseDataSets;
  Except
  end;
  try
    db2.Connected:=false;
    //  error writing data to the connection
  Except
  end;
  try
    tr.AddDatabase(db2);
  Except
  end;

end.


Ты хоть понимаешь, что ты делаешь или просто буквы знакомые пишешь ?
26 сен 17, 10:24    [20822742]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка при работе с компонентами interbase  [new]
Гость1234
Guest
schi

Уже походу больше буквы ищу знакомые - что только не пробовал ...
26 сен 17, 10:37    [20822827]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Delphi Ответить