asp.net c# webforms framework 4.5 を使用してプロジェクトを開発しています。Firebird データベースで接続テストを行いましたが、この接続を閉じても閉じないため、次のコードを使用して実行しました。
string conDDNS;
FbConnection conexaoDDNS;
protected void Abrir_Fechar_Click(object sender, EventArgs e)
{
try
{
this.conDDNS = "DRIVER=InterBase/Firebird(r) driver;User=SYSDBA;Password=masterkey;Database=localhost:C:/AdCom/ADCOM.FDB";
this.conexaoDDNS = new FbConnection(conDDNS);
this.conexaoDDNS.Open();
ListItem item = new ListItem("Conexão aberta");
ListBox1.Items.Add(item);
this.conexaoDDNS.Dispose();
this.conexaoDDNS.Close();
ListItem item2 = new ListItem("Conexão fechada");
ListBox1.Items.Add(item2);
}
catch (Exception erro)
{
ListItem item = new ListItem(erro.ToString());
ListBox1.Items.Add(item);
}
}
すでに.Close()
and.Dispose()
コマンドを使用しましたが、機能しませんでした。
このデバッグを行ったとき、.Open()
コマンドを渡すと接続が開かれることに気付きました。それで問題ありません。ただし、.Close()
コマンドを渡すと、接続はデータベース上でまだ開いています。
データベースで開かれた接続の数を知るために、次のコマンドを使用しています。
select * FROM MON$ATTACHMENTS