在SQLite数据库中按数组存储数组

格茨莫里茨

在我的Java应用程序中,我需要在硬盘上存储一个大表,因为我希望它可以保持持久性。

我的第一次尝试是这样的:(i和j可以爬升到300.000甚至更多,所以我有300.000 ^ 2两次进入的数组,这会使我的系统崩溃。)

stmt.executeUpdate("DROP TABLE IF EXISTS calculations;");
stmt.executeUpdate("CREATE TABLE calculations (factorA, factorB, result);");
double temp = 0;
for (i = 0; i < datasource.size(); i++) {
    for (int j = 0; j < datasource.size(); j++) {
        if (i != j) {
            temp = calc(datasource.get(i),datasource.get(j));
            stmt.execute("INSERT INTO calculations (factorA, factorB, result) VALUES ('"+i+"','"+j+"','"+temp+"')");
        }
    }
}

现在,这执行起来非常慢,可能是因为SQL命令是字符串等。

我的新猜测是,最好先计算10.000 i的结果,然后将它们作为一个单位存储到数据库中。

但是在我尝试实施之前,有没有一个更好的主意?数据库使用不是强制性的,只是易于访问且易于实现。

伊萨

尝试将每n行左右的行添加到一个行中Transaction(假设失败不是问题,例如,如果某些行无法插入,则可以继续操作而无需回滚先前的行)。声明一个取消循环:

int n = 1000; //commit every 1000 rows, or you can tweak
int count = 0; //counter for rows inserted

在外循环中开始事务。增加并检查内循环中的计数器

if(count % n == 0){
  //commit the transaction
}
count++

(不要忘记在外部循环中再次重新打开Transaction)

http://docs.oracle.com/javase/tutorial/jdbc/basics/transactions.html

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Xamarin的SQLite数据库中存储和检索数组

来自分类Dev

在数据库中存储数组

来自分类Dev

查询sqlite数据库并将所选数据存储到二维数组中

来自分类Dev

在数据库中存储字符串数组

来自分类Dev

PHP存储,检索和编辑数据库中的数组

来自分类Dev

在MySQL数据库中存储未知大小的数组

来自分类Dev

在MySQL数据库Nodejs中存储JSON数组

来自分类Dev

使用值数组存储到数据库中

来自分类Dev

使用值数组存储到数据库中

来自分类Dev

如何从数组读取以存储在数据库中

来自分类Dev

在数据库列中存储数组-laravel 5

来自分类Dev

无法在laravel数据库中存储简单数组

来自分类Dev

AS3。在本地 SQL 数据库中存储数组

来自分类Dev

Titanium SQLite:数据库伪数组

来自分类Dev

Titanium SQLite:数据库伪数组

来自分类Dev

将其中包含对象的PHP数组存储到类似SQLite的数据库中的最佳方法是什么?

来自分类Dev

将数组存储在数据库中并将其作为数组从数据库取回的最佳方法

来自分类Dev

如何将JSON数组元素存储到SQLite数据库

来自分类Dev

在数据库中存储数组:JSON与序列化数组

来自分类Dev

在数据库中存储数组:JSON与序列化数组

来自分类Dev

使用枚举/按位将DaysOfWeek作为单个整数存储在sqlite数据库中-Java

来自分类Dev

如果这些数据来自 Laravel 中的 API,如何存储 JSON 数据数组数据库?

来自分类Dev

如何将MySQL数据库中的数据存储到数组中?

来自分类Dev

Codeigniter:如何从数组中获取数据并将其存储在数据库中

来自分类Dev

如何将 MySQL 数据库中的数据存储到由 id 索引的数组中?

来自分类Dev

从数据库中获取数据并存储在数组列表中的程序

来自分类Dev

Express.js-foreach数据数组并将其存储在数据库中

来自分类Dev

如何使用php将API数据(数组)存储到数据库中

来自分类Dev

数据作为数组而不是值存储在数据库中

Related 相关文章

  1. 1

    在Xamarin的SQLite数据库中存储和检索数组

  2. 2

    在数据库中存储数组

  3. 3

    查询sqlite数据库并将所选数据存储到二维数组中

  4. 4

    在数据库中存储字符串数组

  5. 5

    PHP存储,检索和编辑数据库中的数组

  6. 6

    在MySQL数据库中存储未知大小的数组

  7. 7

    在MySQL数据库Nodejs中存储JSON数组

  8. 8

    使用值数组存储到数据库中

  9. 9

    使用值数组存储到数据库中

  10. 10

    如何从数组读取以存储在数据库中

  11. 11

    在数据库列中存储数组-laravel 5

  12. 12

    无法在laravel数据库中存储简单数组

  13. 13

    AS3。在本地 SQL 数据库中存储数组

  14. 14

    Titanium SQLite:数据库伪数组

  15. 15

    Titanium SQLite:数据库伪数组

  16. 16

    将其中包含对象的PHP数组存储到类似SQLite的数据库中的最佳方法是什么?

  17. 17

    将数组存储在数据库中并将其作为数组从数据库取回的最佳方法

  18. 18

    如何将JSON数组元素存储到SQLite数据库

  19. 19

    在数据库中存储数组:JSON与序列化数组

  20. 20

    在数据库中存储数组:JSON与序列化数组

  21. 21

    使用枚举/按位将DaysOfWeek作为单个整数存储在sqlite数据库中-Java

  22. 22

    如果这些数据来自 Laravel 中的 API,如何存储 JSON 数据数组数据库?

  23. 23

    如何将MySQL数据库中的数据存储到数组中?

  24. 24

    Codeigniter:如何从数组中获取数据并将其存储在数据库中

  25. 25

    如何将 MySQL 数据库中的数据存储到由 id 索引的数组中?

  26. 26

    从数据库中获取数据并存储在数组列表中的程序

  27. 27

    Express.js-foreach数据数组并将其存储在数据库中

  28. 28

    如何使用php将API数据(数组)存储到数据库中

  29. 29

    数据作为数组而不是值存储在数据库中

热门标签

归档