1
resposta

Fechar recurso do DAO

Olá pessoal, estou fazendo meu primeiro BD manual e restou umas dúvidas a respeito do sqlite, criei uma classe que estende o SQLiteOpenHelper, daí comecei a fazer umas funções próprias de consulta e inserção, porém restou a dúvida se devo fechar o recurso na função mesmo, no curso não foi fechado mas não entendi o porque, segue um exemplo:

public void insereUsuario(Usuario usuario) {
        SQLiteDatabase db = getWritableDatabase();
        insereIdSeNecessario(usuario);
        ContentValues dados = pegaDados(usuario);
        db.insert("Usuario", null, dados);
    }

essa instância do SQLite deveria ser fechada?

"db.close();"

1 resposta

Oi José, tudo bem? Até onde vi, a própria documentação comenta ser cara a chamada do getWritableDatabase e o getReadableDatabase e recomenda manter a conexão aberta pelo maior tempo possível.

Opcionalmente, você pode fechar, mas essa não é a recomendação. A não ser, claro, que você itere sobre a lista de dados no banco, usando o cursor e tal.

Pelo que entendi, é isso.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software