关于《关系模型的实质》的探讨

这篇博客是因读了王总的《关系模型的实质》而起的。

首先,我不知道什么是《关系模型理论》,只是基于用了多年的数据库工程经验而进行的讨论。

数据库的表和c的struct在逻辑上是等同的,但是C的指针和数据库的外键似乎并无类似的地方。C的指针只是指向一个位置,而数据库的外键除了指向之外,还有双向约束的功能隐含在里面。

接下来,对于为什么一个数组[1,2,3,4]在struct里面可以直接表达,在数据库里面就要另外起个表呢?
对于这个问题,其实要分成两个方面
1.不能存数组是很久很久以前的事情了,现在的数据库xml/json/数组什么的都很自然地添加到了数据库中。Postgres字段的数据类型
2.如果对这个数组有如下要求,如:不能重复,不能有无效数据。那就算是数据库支持字段里放数组,也要把它拿出来成一个独立的表单独管理。用uniq约束使其不会重复,用外键使其不会有无效的数据。

至于语言上的SQL好还是过程式代码好,王总你是专家我就不参乎了;P,反正SQL是表等数据库概念更上一层的抽象,可以抽象成SQL,就可以抽象成其他的更好的“语言”。

对数据库稍微深入一点的讨论

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容