programing

.NET에서 오라클 연결을 닫는 방법

muds 2023. 11. 7. 21:08
반응형

.NET에서 오라클 연결을 닫는 방법

제게 두 가지 목적이 있다고 가정해 보겠습니다.

OracleConnection connection = new OracleConnection(connectionString);  
OracleCommand command = new OracleCommand(sql, connection);

연결이나 Oracle을 닫으려면 명령을 호출해야 합니까?폐기(), 연결.폐기() 또는 둘 다?

이 정도면 충분한가요?

using(connection)  
{
    OracleDataReader reader = cmd.ExecuteReader();
    // whatever...
}
using (OracleConnection connection = new OracleConnection(connectionString))
{
    using (OracleCommand command = new OracleCommand(sql, connection))
    {
        using (OracleDataReader reader = cmd.ExecuteReader())
        {
        }
    }
}

ID를 일회용으로 구현하고 생성하면 사용 블록에 넣습니다.

두 답변 모두 거의 목표에 부합합니다.당신은 항상 전화하고 싶어 합니다.ID를 사용할 수 있는 개체에 폐기()합니다."using"으로 래핑하면 컴파일러가 항상 시도/최종 블록을 구현할 수 있습니다.

참고 사항: 네스팅을 피하고 싶다면 다음과 같이 동일한 코드를 작성할 수 있습니다.

 using (OracleConnection connection = new OracleConnection(connectionString))
 using (OracleCommand command = new OracleCommand(sql, connection))
 using (OracleDataReader reader = cmd.ExecuteReader())
    {
        // do something here
    }

이 정도면 충분합니다.statement를 사용하면 dispose statement가 랩핑되므로 예외가 삭제되더라도 사용자는 안전합니다. 리소스를 폐기하는 것이 제가 선호하는 방법입니다.

using(OracleConnection connection = new OracleConnection(connectionString);    )  
{
   //Create a command object 
    using(OracleCommand command = new OracleCommand(sql, connection))
    {
      using(OracleDataReader reader = cmd.ExecuteReader())
      {
      }

    }
    // whatever...
}

"using"을 사용하면 컴파일러에게 시도를 요청할 수 있습니다.마지막으로 차단하고, 마지막으로 차단하면 일회용 물건을 닫을 것입니다.

using연결이 닫혔는지 확인합니다.통과할 수도 있습니다.CommandBehavior.CloseConnection지휘관의 지시에 따라ExecuteReader접기 전에 닫는 방법Dispose라고 합니다.

언급URL : https://stackoverflow.com/questions/698397/how-do-i-close-an-oracleconnection-in-net

반응형