primary-key相关内容

主键过时了吗?

主键提供哪些独特的功能? 虽然我用舌头牢牢地贴在脸颊上为问题命名,但我的问题很严重.在任何火焰开始之前,我并不是说构建一个没有约束或参照完整性的数据库.然而,据我所知,SQL Server 可以取消 primary key 关键字. 唯一索引涵盖了唯一性 基于列的非空性涵盖了 PK 的非空性要求 PK 不必聚集在一起,所以不是这样 外键可以并且经常使用唯一索引而不是 PK 来实现 ..
发布时间:2021-12-26 20:57:16 数据库

我应该有一个专用的主键字段吗?

我正在设计一个供 Web 应用程序使用的小型 SQL 数据库. 假设一个特定的表有一个 Name 字段,不允许两行具有相同的值.但是,用户可以随时更改名称字段. 此表中的主键将用作其他表中的外键.因此,如果 Name 字段用作主键,则任何更改都需要传播到其他表.另一方面,唯一性要求将被自动处理. 我的直觉是添加一个整数字段作为主键,它可以由数据库自动填充.拥有这个领域有什么意义还 ..
发布时间:2021-12-26 20:54:55 其他开发

如何判断列是否是使用 mysqli 的主键?

我正在将我的一些代码从旧的 mysql 扩展转换为 PHP 中的 mysqli 扩展.以前,使用mysql扩展,我曾使用过这样的代码来查找表中的主键: while ($i primary_key == 1){$primary_key = $meta->name;}$i++;} $meta->primary_key == 1 非常方便. 到目前为止,我已经转换为使用 mysqli 的代码: ..
发布时间:2021-12-25 10:41:57 PHP

休眠&带有 Grails 的 postgreSQL

有一种简单的方法可以设置 hibernate 为每个带有 postgres 的表使用不同的主键 ID?我尝试在 DataSource 中使用 postgres 方言: dialect = org.hibernate.dialect.PostgreSQLDialect或者方言 = net.sf.hibernate.dialect.PostgreSQLDialect 但它不起作用.谢谢 解决 ..
发布时间:2021-12-22 20:28:15 其他开发

我的表是否需要一个主键,它有一个 UNIQUE(复合 4 列),其中之一可以是 NULL?

我有下表(PostgreSQL 8.3),其中存储了一些产品的价格.价格与另一个数据库同步,基本上下面的大多数字段(除了一个)不是由我们的客户更新 - 而是每隔一段时间删除和刷新以与另一个股票数据库同步: 创建表 product_pricebands (template_sku varchar(20) 非空,colourid integer REFERENCES color (colourid) ..
发布时间:2021-12-21 23:45:42 其他开发

SQLite 中的主键是否需要索引?

当一个整数列在 SQLite 表中被标记为主键时,是否也应该为它显式创建索引?SQLite 似乎不会自动为主键列创建索引,但鉴于其目的,它可能无论如何都会对其进行索引?(我会一直在那个专栏上搜索) 字符串主键的情况会有所不同吗? 解决方案 它为您做到了.一个> INTEGER PRIMARY KEY 列放在一边,UNIQUE 和 PRIMARY KEY约束是通过在数据库中创建索 ..
发布时间:2021-12-21 23:34:38 数据库

什么时候应该使用主键或索引?

我什么时候应该使用主键或索引? 它们的区别是什么,哪个最好? 解决方案 基本上,主键(在实现级别)是一种特殊的索引.具体: 一张表只能有一个主键,除了极少数例外,每个表都应该有一个. 主键是隐式的 UNIQUE - 不能有多行具有相同的主键,因为其目的是唯一标识行. 主键永远不能是NULL,所以它所包含的行必须是NOT NULL 一个表可以有多个索引,索引不一定是UN ..
发布时间:2021-12-21 23:34:23 其他开发

附加类型的实体失败,因为相同类型的另一个实体已具有相同的主键值.

让我快速描述一下我的问题. 我有 5 个数据库供 5 个客户使用,并且每个客户都有相同的表,称为 SubnetSettings. 我已经创建了一个下拉列表来选择一个客户,并将显示属于所选客户的 SubnetSetting 表,并允许我创建、编辑和删除. 我可以毫无问题地创建、删除,但是当我想编辑数据时会出现错误: “/TMS"应用程序中的服务器错误. 附加类型为“CF ..
发布时间:2021-12-21 14:57:06 C#/.NET

在 Django 模型中使用 UUID 作为主键(通用关系影响)

出于多种原因^,我想在我的某些 Django 模型中使用 UUID 作为主键.如果我这样做,我是否仍然可以使用通过 ContentType 使用泛型关系的外部应用程序,例如“contrib.comments"、“django-voting"或“django-tagging"? 以“django-voting"为例,Vote模型如下所示: class 投票(models.Model):用户 ..
发布时间:2021-12-19 11:04:36 其他开发

如何在 MySQL 中创建也是主键的外键?

这应该是一个相当简单的问题,但我找不到简单的答案.你如何创建一个外键,它也是 MySQL 中的主键?这是我目前的尝试: CREATE TABLE Sale(sale_id CHAR(40),主键(sale_id),折扣双,类型 VARCHAR(255),价格双倍,);创建表 Normal_Sale(sale_id CHAR(40),主键(sale_id););CREATE TABLE Speci ..
发布时间:2021-12-17 19:53:10 数据库

JPA 何时设置 @GeneratedValue @Id

我有一个简单的 JPA 实体,它使用生成的 long“ID"作为其主键: @Entity公共课播放器{私人长ID;受保护的玩家(){//没做什么;id 默认为 0L}@GeneratedValue@ID公共长 getId() {返回标识;}protected void setId(final long id) {this.id = id;}//其他代码} 在这种类型的对象生命周期的某个时刻,J ..
发布时间:2021-12-14 17:38:33 Java开发

SQL Server中如何选择聚集索引?

通常在 SQL Server Management Studio 中通过设置主键创建聚集索引,但是我最近关于 PK 聚集索引的问题 (主键对Microsoft SQL Server 2008 的意义) 已经表明没有必要将PK 和聚集索引设置为相等. 那我们应该如何选择聚集索引呢?举个例子: 创建表Customers (ID int, ...)创建表订单(ID int,Custome ..

MS Access 是否禁止插入主键违规?

我正在将 MS Access 数据库重写到 SQL 服务器,并且在 Access 中发现了一个奇怪的问题,我希望有人可以提供帮助. 我有一个表,我们称之为“主",帐户上有一个主键,该主键已编入索引且不允许重复.看起来很简单,但我的问题是在插入数据时发生. 我的 INSERT 查询是(为简洁起见,字段数已被限制) INSERT INTO Main (Account, SentDate, ..
发布时间:2021-12-12 22:47:30 其他开发

在 Access 2010+ 中为 ID 自动生成日期 + 4 位序列号

我需要为我的业务密钥自动生成一个 12 个字符的值.无需任何用户交互. 8 个字符 ->今天日期(yyyymmdd 或 ddmmyyyy).+4 个字符 ->序列号 (0001,0002,0003). 必须在每个新的一天重新设置序列号. 是否可以在不涉及任何编码的情况下在 Microsoft Access 2010+ 中执行此操作? 解决方案 由于您使用的是 Access 201 ..
发布时间:2021-12-12 22:35:05 其他开发

实体框架 4:如何找到主键?

我正在尝试使用 EF4 创建一个通用方法来查找对象的主键. 示例 public string GetPrimaryKey(){...} 为了提供更多信息,我正在使用 Tekpub StarterKit,下面是我正在尝试启动和运行的类 使用系统;使用 System.Collections.Generic;使用 System.Linq;使用 System.Web;使用 System.Dat ..
发布时间:2021-12-08 20:36:19 C#/.NET

休眠,更改标识符/主键

当我尝试更改 @Entity 中的 @ID 时,我收到以下异常. com.google.search.pagerank.ItemEntity 实例的标识符从 1 更改为 2. 我知道我正在更改表中的主键.我正在使用 JPA 注释. 我使用这个单一的 HQL 查询解决了这个问题:update Table set name=:newName where name=:oldName 而 ..
发布时间:2021-12-08 19:30:38 其他开发

休眠 ID 生成器

有人知道一些关于如何为休眠创建自定义 ID 生成器的好教程吗? 解决方案 在 Google 上粗略搜索“hibernate custom id generator tutorial"发现了以下可能性.我已经排除了那些看起来没有用的并总结了每个的内容. http://www.devx.com/Java/Article/30396- 涵盖了在数据持久化之前生成 ID(因此还没有业务密钥) ..
发布时间:2021-12-08 19:30:21 其他开发

没有@Id 的休眠/持久性

我有一个数据库视图,它生成的结果集没有真正的主键.我想使用 Hibernate/Persistence 将此结果集映射到 Java 对象.当然,因为没有PK,我不能用@Id来装饰任何字段. 在部署时,Hibernate 会抱怨缺少 @Id.我该如何解决这个问题? 解决方案 如果存在使行唯一的列组合,请围绕列组合建模主键类.如果没有,那么您基本上是走运了——但您应该重新检查视图的设计, ..
发布时间:2021-12-08 19:13:55 Java开发