将函数存储为数据

时间:2011-07-14 01:29:51

标签: design-patterns database-design model

这个问题的背景来自我从A Universal Person and Organization Data Model得到的一个想法。

作者认为,虽然人们可以并且经常会有各种各样的组件(中间名,姓名等),但预测如何将它们全部存储是毫无意义和令人沮丧的,除非您有明确的搜索要求这样做。相反,他说要将一个属性强制命名为Surname,并将其他所有内容存储在“RestOfName”中。

无论你是否喜欢这个想法,我在这里的问题是关于下面模型中的PK NameFunction(图像质量很差,我知道)。我猜测,因为没有讨论,它是一种格式化和解析RestOfName的方法。

你真的存过一个函数吗?我可以看到它在对象模型中是如何有意义的,但我无法将其描绘成数据。

如何将函数存储为数据?

干杯,
Berryl

P.S。额外的功劳,如果你能弄清楚最后一个属性是什么。我会说Salutation虽然这似乎与作者的观点相反

enter image description here

2 个答案:

答案 0 :(得分:2)

有些语言可以在运行时评估代码;因此,您可以存储代码以传递给eval函数。

这种动态实施可能会带来很大的风险,从而暴露出安全性,完整性和功能性危险。

答案 1 :(得分:1)

你误解了the article。事实上,它确实告诉你完全 NameFunction的含义。

  

每个Party Name都有一个特定的功能,例如合法名称或   专业名称或其他别名。 。

此外,并非每个人都有姓氏。例如,请参阅Falsehoods Programmers Believe About Names