我必须将一些文件从数据库A移动到数据库B.
因此,我从数据库A查询数据到光标,然后删除数据库A中的数据。
之后,我使用cursor将数据行插入数据库B.这个过程有问题吗?
因为有人告诉我光标可能只是一个引用,而不是真正将数据存储在光标对象中。因此,如果在将数据插入数据库B之前删除数据库A,可能会出现异常!
是否有人知道游标是否是对数据库的引用,或者它是否真的将数据保存在对象中?
答案 0 :(得分:1)
你的案子不起作用。 Cursor是对内存的一部分的引用。如果删除数据库,则该部分内存中的数据也将被删除。
您可以使用游标,但只应在迁移后删除旧数据库。为什么要在将结果插入新数据库之前删除旧数据库?
答案 1 :(得分:0)
Cursor
只能作为引用,如果在插入数据库B之前从数据库A中删除数据,则会完全丢失数据。
更好,更合理的方法是从数据库A查询数据,将其插入数据库B,然后从数据库A中删除数据。