我正在阅读DBAccess文档,以了解它是否可以满足我的需求。
我的问题是关于移民的。
例如:我有一个使用DBAccess实现的现有应用程序,该应用程序使用具有以下字段的表“Person”:
- ID
- 名称
- 姓
- 地址
如果将其他两个字段添加到Person类,数据库将发生什么情况:
-电子邮件
- 电话号码
?
DBAccess是否自动将新字段添加到数据库表?
有没有办法为新添加的字段指定默认值?
最佳答案
是的,如果添加了这两个附加属性,DBAccess将自动添加附加列。
当前,无法为新列指定默认值,它们将按照您的期望全部用NULL初始化。
您对默认值的建议很有趣,我很惊讶以前从未提出过。它看起来既易于实现,又具有逻辑性。唯一奇怪的是,如果我要添加方法
+ (id)defaultValueForProperty:(NSString*)propertyName;
到框架,然后调用它,那么在创建新列时,用户可能会希望这种情况每行发生一次,而在创建列时不会一次发生,因此他们可以自定义该值,或者从其他内容计算得出。
对于您认为合适的解决方案,我会感到高兴。
我个人倾向于使用类和实例方法,如果开发人员实现了实例方法,则将对每一行进行解析和重新编写,这可能很慢,但这也是非常有用的功能。
无论哪种方式,添加这样一个简单的功能都不会花费一个多小时。我们只需要看看是否可以看到任何陷阱即可。
谢谢