大概看了下,有小部分是错误的,这里提出来,有兴趣可以讨论一下。 以下皆在InnoDB引擎上讨论(毕竟第1条就指出要使用InnoDB引擎) 第12条,表必须有主键这个没错,但“无主键”的表这个是不存在的。 InnoDB使用的是聚簇索引,这种索引类型导致InnoDB建立的表必然会有主键,也就根本不会存在“无主键”的表。 那为什么建表的时候可以不指定主键呢? 因为InnoDB会自动生成隐含主键,是一个自增的隐含ID。 这里提到row格式做主备同步,我理解的这里不会因为隐含主键表导致这种异常。如果有场景,可以来讨论一下。 第28条,禁止使用JOIN,这个就有些过分了。 JOIN不可能被禁止掉,只是需要写SQL的时候,注意一下驱动表与被驱动表,以及尽量利用到索引。