什么时候建议打开和关闭数据库?

时间:2013-08-28 08:24:09

标签: java android sqlite

我正在使用数据库开发应用程序,但我不知道什么时候有用呢?

建议每次关闭,否则我应该保持打开,直到我的应用程序关闭?

谢谢

8 个答案:

答案 0 :(得分:2)

您可以考虑使用ContentProvider。它还可以轻松处理来自许多活动和碎片的数据库和数据。您还需要最少的工作来处理数据库连接

答案 1 :(得分:0)

在主要活动中:

public static DataBaseConect db=null; 


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        db=new DataBaseConect(this);}

@Override
    protected void onDestroy() {
        // TODO Auto-generated method stub
        super.onDestroy();
         db.close();
    }

答案 2 :(得分:0)

销毁活动时关闭数据库。

@Override
protected void onDestroy() {
    super.onDestroy();

//close db in here.

}

答案 3 :(得分:0)

推荐的方法是使用连接池,例如Apache commons-dbcp http://commons.apache.org/proper/commons-dbcp/,并在使用后立即关闭ResultSet,Statement和Connection。

答案 4 :(得分:0)

我不确定代码的架构。 连接基本上在DAO层打开,关闭连接的代码应该在'finally'块中。

答案 5 :(得分:0)

连接数据库需要花费有限的时间。通过域套接字或命名管道进行连接时,它可以忽略不计,但如果通过网络连接,或者更糟糕的是开放式Internet,它可能会大得多。至少在请求期限内保持连接状态。最后你应该总是关闭它,有时它会在程序终止时隐式完成,但这是一个很好的做法来检查。

答案 6 :(得分:0)

一般的共识是,在使用完毕后关闭数据库连接。

例如,这可能是在启动时仅使用一次连接后,您将在初次使用后关闭它。

您可能希望再次使用数据库连接,但在这种情况下,您应该将其保持打开状态。

答案 7 :(得分:0)

始终建议为每个查询操作打开和关闭连接....有时用户可能需要时间来发送请求并且不建议保持数据库连接打开以进行日志记录。在java中你可以使用“Finally”块来进行连接关闭方法调用,在C中你可以使用析构函数来调用连接关闭方法...或者当你完成查询执行时显式地

相关问题