我正在使用Sqlite.Net在处理Xamarin表单时保存数据。如果我向现有表添加新列,我正在努力更新表。目前,我们需要重新安装应用程序,以便用户拥有更新的数据库,除非数据库没有任何更改。
答案 0 :(得分:0)
可能你应该维护数据库版本。 你可以使用像
这样的东西 Int32 current_version = 0;
//increment this when you publish the version containing database changes
Int32 latest_version = 5;
cmd.CommandText = "pragma user_version";
current_version = (Int32) cmd.ExecuteScalar();
if(current_version < latest_version) {
// use alter table statements to add the new columns
}
...
// finally stamp your database as having the latest version
cmd.ExecuteNonQuery("pragma user_version=" + latest_version);