如何在wp7上使用coolstorage更改sqlite数据库?

时间:2011-12-11 06:52:06

标签: sqlite windows-phone-7 coolstorage

我正在使用coolstorage和sqlite作为数据库为wp7编写应用程序。

我选择sqlite的原因是因为它似乎具有对架构进行更新的良好能力。

但是,在我的测试中,我可以运行'alter table ...'命令,但如果我添加一个列然后尝试读取该列,则会收到该列不存在的错误。

但是,如果我关闭应用并再次运行,那么列就在那里。

我想过尝试关闭我的连接,但我不知道如何使用coolstorage做到这一点。有办法吗?那会有用吗?

我是Coolstorage和SQLite的新手,所以感谢任何帮助。

如何在不关闭和重新启用应用程序的情况下更改sqlite架构?

[更新:2011年12月15日] 我们通过确保在查询受影响的表之前运行架构更新来避免此问题,这可能是正确的做法。

如果有人在针对表运行查询后想出了一种方法来进行架构更改,我仍然有兴趣知道。

1 个答案:

答案 0 :(得分:0)

Sqlite能够将列添加到现有表的末尾,但是已经准备好的任何查询都不会显示更改。根据我的经验,如果再次准备查询,它就可以了。或者,您可以关闭并重新打开数据库。请注意,不直接支持其他架构更改,并且需要您执行以下操作:

  1. 重命名原始表格
  2. 创建一个包含所需更改的新表。
  3. 将数据从旧表复制到新表(如果适用)。
  4. 删除原始表格。