InterBaseのデータベースオープンでスタックオーバーフローでエラーの原因は


照美  2007-07-09 21:45:27  No: 26977

インターベースとD6を使ってWinXPの環境にアプリを試作中の初心者です。DelphiではDataModuleがあるとのことでそこにTIBDatabase,TIBDataset、TIBTransaction、TDatasource、TIBQueryを貼り付けOnCreateイベントにサンプル等を見て以下のコードを書きましたが実行するとスタックオーバーフローでエラーになります。
コード
procedure TDM_accsctrl.DataModuleCreate(Sender: TObject);
begin
  //  データベースの設定
  with DB_ACCESSLIST do
    begin
      DatabaseName:='d:\InterBase\database\accesslist.gdb';
      Params.Clear;
      Params.Add('User_name=SYSDBA');
      Params.Add('password=masterkey');
      Params.Add('lc_ctype=SJIS_0208');
      LoginPrompt := False;
    end;

  //  トランザクションの設定
  with TRN_ACCESSLIST do
    begin
      Params.Clear;
      Params.SetText('consistency');
      Params.SetText('wait');
      Params.SetText('write');
    end;

  //  データセットの設定
  with DST_ACCESSLIST do
    begin
      SelectSQL.Clear;
      SelectSQL.Add('SELECT * FROM T001_ACCESSLIST   ');
    end;

  //  データセットのオープン
  DB_ACCESSLIST.Connected := True;
  TRN_ACCESSLIST.StartTransaction;
  DST_ACCESSLIST.Open;
end;
トレースしてみるとデータセットのオープン⇒"DB_ACCESSLIST.Connected := True;から"TRN_ACCESSLIST.StartTransaction;”にいかずに先頭の"with DB_ACCESSLIST do"に戻りループしていて、スタックオーバーフローになります。
コードにミスはないと思いますが原因究明のヒントがあれば教えてください。
また、DBはISQLでは正常にConnectできますし、SQLも使えます。


おおお  2007-07-10 02:02:47  No: 26978

これかな?
http://www2.big.or.jp/~osamu/Delphi/delphi-browse.cgi?index=067208


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加