mysql - guid 作为主键?

标签 mysql primary-key

我有一个 mysql 数据库,其中有 3 个表必须连接在一起。我收到了较小的数据库,它们必须为这个 mysql 数据库提供数据,并在我获得新数据时附加新数据。我遇到的问题是我得到的较小的数据库是由外部应用程序生成的,并不是真的要一起使用。因此,当我使用较小数据库的模式时,我无法知道这 3 个表中的所有记录如何归属在一起。

我正在考虑插入一个 guid 作为主键,我可以将它添加到表中并在我插入所有新数据时插入。
但是,我对使用 char 字段(用于存储 guid)作为键持怀疑态度。这是一个有效的问题,还是使用 char 字段知道它始终是一个充分的解决方案?有人可以推荐更好的方法吗?

谢谢

最佳答案

MySQL 不提供 GUID/UUID 类型,因此您需要在用于将行插入数据库的代码中生成 key 。 char(32)char(36)(如果包含连字符)是代替实际 GUID 数据类型存储 GUID 的最佳数据类型。

关于mysql - guid 作为主键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4053036/

相关文章:

mysql - 群组功能使用无效

sql - 主索引可以是 MySQL 中的 CHAR 吗?

mysql - MySQL 中每个表有更多主要/自动添加唯一 ID 吗?

mysql - Laravel 多模块查询

mysql - 这个(规范化的)数据库结构是否允许我按照我的意图通过标签进行搜索?

hadoop - 用于实时分析解决方案的 HBase 架构/ key

database-design - 为什么单主键比复合键好?

php - 如何在创建主 ID 之前或同时获取它?

PHP连接Oracle和mySQL

android - 具有支付集成的 Android 应用程序的数据库选择