sql >> Databáze >  >> RDS >> Sqlserver

SqlConnection SqlCommand SqlDataReader IDisposable

Toto je 100% správný způsob. Pokud třída využívá IDisposable měl by být zabalen do using příkazem zajistit, že Dispose() se nazývá metoda. Komunikace s externí technologií – v takovém případě nespravovanou – jako je SQL Server, by se navíc neměla brát na lehkou váhu. SqlCommand objekt implementuje IDisposable z velmi dobrého důvodu. Níže uvedený kód je Dispose() metoda pro SqlCommand objekt:

protected override void Dispose(bool disposing)
{
    if (disposing)
    {
        this._cachedMetaData = null;
    }
    base.Dispose(disposing);
}

a jak můžete vidět, uvolňuje odkaz na _cachedMetaData objekt, aby se také mohl vyčistit.



  1. Odhadovaný počet řádků ke čtení

  2. JPA SQL Server Mapování bez dialektu pro typ JDBC:-9

  3. Řešení pro:U tabulky, která má seskupený index columnstore, nejsou podporovány kurzory

  4. „0000-00-00 00:00:00“ nelze reprezentovat jako java.sql. Chyba časového razítka