ORM Lite Android使用现有表格创建临时表

时间:2013-09-06 07:44:30

标签: android ormlite

ORMLite Android不使用Create表语句,因为它纯粹面向对象。但我有一个场景将现有的数据库表数据复制到临时数据库表。我怎么能实现这一目标?

表A已包含数据,我需要创建表A_temp并将表A中的所有数据复制到表A_temp。 (表A和A_temp具有相同的结构)

修改

我最终使用了以下策略。感谢@gray的建议。

TableUtils.createTableIfNotExists(connectionSource, A_Temp.class);
connectionSource.getReadWriteConnection()
            .executeStatement("INSERT INTO A_Temp SELECT field1, field2, field3, field4 FROM Table_A", 0); 

1 个答案:

答案 0 :(得分:0)

  

ORMLite Android不使用Create表语句,因为它纯粹面向对象。

嗯,不,你是create table陈述。这就是TableUtils.createTable(...)调用所做的事情。

  

但我有一个方案可以将现有数据库表数据复制到临时数据库表。我怎么能实现这个目标?

您是否尝试过使用dao.executeRaw(...)自行发出复制命令?然后,您可以使用实体上的@DatabaseTable(tableName = "A_temp")将它们指向正确的表。这应该工作正常。