안녕하세요..
C#으로 파이어버드를 사용하는 중입니다..
한가지 의문 점이 생겨 이렇게 글을 올립니다..
현재 DefaultDataBase(순수데이터베이스 파일)를 만들고
FbConnectionStringBuilder() 메서드를 이용하여 데이터베이스에 접근하고 있습니다..
DefaultDataBase를 파일 카피하여 해당 달의 이름으로 변경하여 사용합니다.. (2012년 11월이면 201211.FDB)
의문점이 달이 넘어가 커넥션을 하는 부분이 없는데도 불구하고 파이어버드 서버가 사용중이라 접근이 안된다는 문구가
뜨네요.. 삭제를 할려고 해도 안되는 부분이 있어서..
public void ExcuteNonQuery(string SQLQuery)
{
SQLsyntax = SQLQuery;
fbCon.Open();
ft = fbCon.BeginTransaction();
fc = new FbCommand(SQLsyntax, fbCon, ft);
fc.CommandType = CommandType.Text;
fc.ExecuteNonQuery();
ft.Commit();
fc.Dispose();
fbCon.Close();
}
데이터리더 부분에서 잡는건 아닐지.. 리더는 이렇게 구현하였습니다..
public FbDataReader ExcuteReader(string SQLQuery)
{
SQLsyntax = SQLQuery;
fc = new FbCommand(SQLsyntax, fbCon);
fr = fc.ExecuteReader();
return fr;
}
메인에서 사용할 때에만 DB 커넥션을 오픈하고 클로즈 합니다...
이런식으로 구현을 하였습니다. Close나 커밋 이외에 데이터베이스와의 연결을 끊는 방법이 있는지..
궁금합니다... 혹시 아시는 분 계실련지요..
|