如果我们要用Zumero...远程和本地之间的模式是否需要保持相同?因为如果我们部署应用程序,我们将无法更改本地模式。
环境:
MAC机中的Xamarin.Forms、要与SQL Server同步的SQLite数据库
发布于 2015-05-21 23:12:07
在Zumero中,当您在ZSS Manager中创建"DBFile“时,您正在定义服务器数据库的哪个子集将与客户端同步。您选择的子集的架构将在远程数据库和本地数据库之间保持相同。
从Zumero 2.0开始,您将能够更改服务器上的模式,这些模式更改将在下次同步时自动应用于每个Zumero客户端。(请参阅Paul Roub链接的文档,了解其工作原理以及有关如何处理某些模式更改的详细信息。)
另一方面,在客户端所做的架构更改将不会应用于服务器。因此:您可以安全地使用CREATE TABLE添加不会与服务器同步的“仅本地”表。但是,您不应该在同步表上使用ALTER TABLE ... ADD COLUMN,因为Zumero有时会删除并重新创建表(例如,当从服务器应用架构更改时),在这种情况下,您将丢失非同步列中的所有数据。并且您不应该删除或重命名同步表,因为这将在同步过程中导致错误。
发布于 2015-05-19 21:15:19
With care,您可以在不更改客户端架构的情况下更改服务器端架构。
如果您在服务器端添加新列,默认情况下,除非您明确请求,否则这些列不会同步到客户端DB。
但是,如果重命名或删除列,则客户端架构将在下次同步时自动更改。如果外键被添加/删除/等等,这同样适用,尽管这些更改不一定会给客户端应用程序带来麻烦。
https://stackoverflow.com/questions/30317888
复制相似问题