String
core data
entity
attribute
通常应该存储多大String
?
attributes
应该分成多个entities
甚至多个Strings
的关系?
我不知道空间密集的attribute
是多少。想象一下,想要将100页的文本保存为1 String
:Querying Core Data
。
除attributes
特定String
的困难外,这是否会导致任何问题?
基本上,begin
client = DocusignRest::Client.new
# do some stuff
rescue DocusignCrazyError, DocusignBreakingError, DocusignAnotherError => error
# log exception
end
有多大而无法作为属性存储?
答案 0 :(得分:1)
是使用一个属性还是多个属性仅取决于数据在逻辑上是单个值还是多个值。也就是说,它完全取决于数据的结构,而不是它的大小。
但是,对于过大的值,将数据保存在单独的文件中并且仅将文件名保留在Core Data中通常更有意义。当您需要完整值时,从Core Data获取文件名并加载文件内容。
这种方法的优点是,当您不需要时,可以避免将整个值读入内存 - 例如,当您只关心其他字段时,将整个100页的字符串值存入内存(例如“标题“字段或东西”。将数据拆分为多个属性不会解决此问题,并会产生额外的,不必要的复杂性。