如何确定android数据库的最大大小并防止SQLiteFullException?

时间:2010-09-07 07:02:40

标签: android

我对Android SQLiteDatabase

的查询很少

1。)通常数据库存储在内部存储器中,我们可以指定外部存储的路径并以类似的方式使用它吗? 2.)如何确定数据库的可用空间大小?我使用了来自SQLIteDatabase类的getMaximumSize(),但这给了我1099511626752 这是字节数吗?如果假设那么这似乎太大而且不实用。我正在使用HTC G1测试这个。 3.)如何确定表中条目的大小?或者我必须拉整个表并手动查看其大小。是否与手机存储相同? 4.)在进入数据库之前,我可以检查是否有可用空间吗?我想防止SQLiteFullException。

感谢。

1 个答案:

答案 0 :(得分:0)

  

通常数据库存储在内部存储器中,我们可以指定外部存储的路径并使用它   以类似的方式

据我了解,是的,虽然您将无法使用SQLiteOpenHelper

  

如何确定数据库的可用空间大小?我使用了SQLIteDatabase类的getMaximumSize()   但这给了我1099511626752这是以字节为单位的吗?如果假设那么这似乎太大而不是   实际的。我正在使用HTC G1来测试它。

我希望它可以是getMaximumSize()中较小的一个,以及存储数据库的可用空间量。

  

如何确定表格中条目的大小?

我不知道“条目”是什么,更不用说如何计算它的大小了。

  

在进入数据库之前,我可以检查是否有可用空间吗?

不容易,AFAICT。 Android在getFreeSpace()上没有File方法。