June 2026
740 pages
13h 7m
Chinese
本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com
致所有架构师和设计师:你们一直都在不假思索地构建表。这倒也没什么问题,它们确实能正常工作。你们可以在这些表上执行所有的 CRUD 操作,并编写任意复杂的 SELECT 语句。但随着数据量的增加,你们会逐渐发现 一些问题,让你不禁后悔当初 ,以便让WHERE子句更简洁。又或者,你的单张表已经不够用了,需要对“布局”稍作调整。随着数据日益复杂,关键在于让你的表 原子化 ,并将数据划分为 多个相关表。谁知道呢?也许你最优的蓝图最终会演变成整座摩天大楼的规划方案。继续阅读,一探究竟。
如果艾比遵循了最佳实践,她本应 在执行 UPDATE 语句前,先通过 SELECT 查询测试其WHERE子句 。现在她执行了一条SELECT 语句,查看哪些内容发生了变化。
艾比编写WHERE子句时,本以为城市名称只会匹配一行,但事实证明这是错误的,她无意中将哥斯达黎加的圣何塞标记为位于加利福尼亚州。
当然,她本可以使用带有WHERE AND子句来同时匹配city country,例如:
WHERE city = ‘San Jose’
AND country = ‘USA’
但如果同一个国家/地区内恰好有两个同名城市(例如位于美国的俄勒冈州波特兰市和缅因州波特兰市),这种做法可能会引发问题。
你完全正确,这被称为 主键 ...
Read now
Unlock full access