问题标签 [primary-key]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
14340 浏览

django - Django + PostgreSQL:如何重置主键?

我一直在 Django 中开发一个应用程序。首先,为简单起见,我一直使用 sqlite3 作为数据库。

但是,一旦我迁移到 PostgreSQL,我就遇到了一个问题:一旦我清除了一个表,主键就不会重置。

这个应用程序是一个长时间(几周)玩的游戏。因此,每次新游戏开始时,都会从数据库中清除所有数据,然后添加新的随机数据。

我希望能够在1每次清理/重建游戏时使用主键“重新开始”。

代码仍然按原样工作,但整数是描述游戏中对象的一种非常自然的方式。我希望每场新游戏都从 1 开始,而不是从上一场比赛结束的地方开始。

如何重置 PostgreSQL 中的主键计数器?请记住,我不需要保留表中的数据,因为无论如何我都会将其清除。

0 投票
3 回答
871 浏览

database - 标签系统中标签的 ID

我正在实现一个类似于 StackOverflow 标签系统的标签系统。我在考虑在存储标签并与问题相关时,这种关系将直接与标签名称相关,或者最好创建一个字段 tagID 以将问题与标签“链接”?看起来直接链接到标签名称更容易,但看起来不太好,主要是为什么在使用统计数据和/或标签分类(恕我直言)时很难管理这一点。另一个问题是当一个管理员决定“修复”标签名称时。如果标签名称中没有标签ID,那么我将更改表的键...

你有什么想法?

感谢所有回复。我将删除此帖子,因为还有其他具有相同主题的帖子。我想知道为什么搜索和建议没有为我显示结果...

0 投票
5 回答
965 浏览

database - 非常小的表上的主键

我有一个非常小的表格,最多有 5 条记录,其中包含一些标签。我正在使用 Postgres。

结构如下:

id - smallint 标签 - varchar(100)

该表将主要用于引用其他表中的行。问题是是否真的有必要在 id 上有一个主键,或者在 id 上只有一个索引,或者两者都有?

我确实阅读了有关索引和主键的信息,并且我知道这在很大程度上取决于表的用途:

没有主键的表

编辑:我想问一下是否有主键或索引,或者两者都有。我编辑了这个问题。

0 投票
6 回答
4650 浏览

oracle - 以错误的方式插入 Oracle - 如何处理?

我刚刚找到以下代码:

我可以为 PK 创建一个序列,但有一堆现有代码(经典 asp、不属于该项目的现有 asp.net 应用程序)不会使用它。

我应该忽略它,还是有办法在不进入现有代码的情况下修复它?

我认为最好的选择就是这样做:

选项?

0 投票
2 回答
2358 浏览

c# - 自动重新排序数据表主键中的列?

我有一个名为 Permissions 的表,它在名为 _permissionsSet 的数据集中定义,它有 3 列:PermissionGroup、Permission、PermissionLevel(按此顺序)

我将表上的主键设置为包括所有 3 列,如下所示

当我查看“键”中的值时,它们符合预期:

但是当我查看主键时,顺序发生了变化!

在我的数据表中使用 Rows.find 方法时,这具有明显的含义。

有谁知道为什么会这样?

0 投票
1 回答
1182 浏览

mysql - 通过 phpmyadmin 导入 csv 或 sql 并跳过 PK?

是否可以使用 phpmyadmin 或其他工具将 csv 或 sql 备份导入现有数据库并跳过主键,或者这是手动逐表插入查询并手动删除主键的过程?

0 投票
1 回答
2934 浏览

activerecord - Castle ActiveRecord 播种主键值

我想知道如何使用 Castle AR“播种”一个自动递增的主键值?例如,希望 Orders 表的主键以 10000 开头。这是 1. 可能 2. 创建订单号的好解决方案吗?

也许有一种方法可以在不是 pk 的数据库上连续自动递增字段,播种为 10000?

0 投票
2 回答
8408 浏览

sql - 主键总是聚集的吗?

请清除我对此的疑问,在 SQL Server(2000 及更高版本)中,主键是自动聚集索引还是我们可以选择在主键上使用非聚集索引?

0 投票
6 回答
16135 浏览

sql - 提高集群索引 GUID 主键的性能

我有一个包含大量行(10K+)的表,它的主键是 GUID。主键是集群的。此表的查询性能相当低。请提供建议以使其高效。

0 投票
3 回答
1851 浏览

nhibernate - NHibernate 和字符串主键

我们有一个使用字符串作为主键的遗留数据库。我想在遗留数据库之上实现对象,以更好地实现一些业务逻辑并为用户提供更多功能。

我在某些地方读过,在表上使用字符串作为主键是不好的。我想知道这是为什么?是因为区分大小写的问题吗?字符集?

... 为什么这对 NHibernate 来说特别糟糕?

...并跟进...如果字符串确实生成了错误的主键,是否值得用整数或 GUID 等替换数据库中的主键?(我们只涉及大约 25-30 张桌子)