当前位置: 首页 > 面试题库 >

如何选择我的主键?

麹耘豪
2023-03-14
问题内容

我在选择主键时发现了此阅读材料。

  • 是否有关于如何为给定表选择主键的指南/博客文章?
  • 我应该使用自动递增/生成的密钥,还是应该将主密钥基于要建模的数据(假设它具有真正唯一的字段)?
  • 出于性能考虑,主键是否应该总是很长,或者即使它是字符串,我也可以将外部唯一ID作为主键吗?

问题答案:

我相信在实践中使用自然键很少比代理键好。

以下是使用自然键作为主键的主要缺点:

  • 您可能有不正确的键值,或者您可能只是想重命名键值。要对其进行编辑,您将必须更新将其用作外键的所有表。

  • 拥有真正独特的自然密钥通常很困难。

  • 自然键通常是字符串。数字字段上的索引比字符串字段上的索引紧凑得多。

对于主键的数据类型应该没有硬性规定。通常,数字键的性能更好,但是您可以使用字符串,尤其是在表不大且引用该表的表也不大的情况下。



 类似资料:
  • 我正在使用Spring Boot创建一个web应用程序,我不知道如何将URL从更改为类似的内容。 我如何分配文件中的URL?

  • 问题内容: 我在寻找一些指针。我有一个带有主题列表的选择列表。 以及另一个子主题列表: 当第一个列表值更改时,我希望能够刷新第二个选择列表。问题是我不知道该怎么做。我想使用AJAX,但是可以吗?我的任何建议(起点)将不胜感激。 问题答案: 您将需要创建一个控制器操作,该操作将从第一个列表中获取一个值,并为第二个列表提供一个选项列表。然后,您可以使用Java框架(例如JQuery)进行ajax调用:

  • 我试图检索我的选择选项从3个数据库位于一个连接,这不是我的deaut连接。 但我得到了一个错误:未定义的变量:marqs(视图:C:\wamp64\www\project etSovac\资源\视图\home.blade.php) 这是我的控制器代码 还有我的home.blade.php密码 你能帮忙找出问题所在吗?谢啦

  • 我想调用一个函数时,选择的任何选项。类似于这样: 但不知何故不起作用。有人能帮忙吗。 请注意 我不想捕获更改事件,如果我选择已经选择选项,则不会触发更改事件

  • 在选择域之前: 域名选择后: 当我们启动网站时,它将显示域名下拉列表和选项值为“选择域”。如果我选择“选择域”选项,将显示实际域名。(这意味着在我选择选择域选项之前,不会显示有效域名列表) 我是硒新手,所以我试着使用和可见文本选项选择该选项。 我尝试了下面的python代码。但它不起作用。 我需要按以下顺序选择: > 选择域按钮 接下来,我需要选择自动隐藏文本“选择域…”选项值。然后将显示域值。(