ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
一. 自增主键,在mysql中应用最广泛。 * **优点:** 1. 需要很小的数据存储空间,仅仅需要4 byte。(bigint类型,是8 byte) 2. insert和update操作时使用INT的性能比UUID好,所以使用int将会提高应用程序的性能。 3. index和Join操作,int的性能最好。 4. 容易记忆。 * **缺点:** 1. 如果经常有合并表的操作,就可能会出现主键重复的情况。 2. 使用int数据范围有限制。如果存在大量的数据,可能会超出int的取值范围。 3. 很难处理分布式存储的数据表。 二. UUID * **优点:** 1. 能够保证独立性,程序可以在不同的数据库间迁移,效果不受影响。 2. 保证生成的ID不仅是表独立的,而且是库独立的,这点在你想切分数据库的时候尤为重要。 * **缺点:** 1. 比较占地方,和INT类型相比,存储一个UUID要花费更多的空间。 2. 使用UUID后,URL显得冗长,不够友好。 3. 没有内置的函数获取最新产生的UUID主键。 4. 很难记忆。Join操作性能比int要低。