标签: unique-key

237
推荐指数
8
解决办法
20万
查看次数

主键和唯一键之间的区别

我正在使用mysql数据库.我在主键和唯一键之间存在混淆.

请帮我在哪里创建主键和唯一键.我的意思是在哪种情况下我们创建唯一的密钥或主键.

database primary-key unique-key

235
推荐指数
9
解决办法
55万
查看次数

实体框架中多列的唯一键约束

我正在使用Entity Framework 5.0 Code First;

public class Entity
 {
   [Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
   public string EntityId { get; set;}
   public int FirstColumn  { get; set;}
   public int SecondColumn  { get; set;}
 }
Run Code Online (Sandbox Code Playgroud)

我想在两者之间进行组合,FirstColumn并且SecondColumn作为独特的组合.

例:

Id  FirstColumn  SecondColumn 
1       1              1       = OK
2       2              1       = OK
3       3              3       = OK
5       3              1       = THIS OK 
4       3              3       = GRRRRR! HERE ERROR
Run Code Online (Sandbox Code Playgroud)

反正有吗?

entity-framework constraints unique-key multiple-columns ef-code-first

222
推荐指数
8
解决办法
15万
查看次数

INSERT ... ON DUPLICATE KEY(什么都不做)

我有一个表,其中包含两列唯一键:

CREATE  TABLE `xpo`.`user_permanent_gift` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`fb_user_id` INT UNSIGNED NOT NULL ,
`gift_id` INT UNSIGNED NOT NULL ,
`purchase_timestamp` TIMESTAMP NULL DEFAULT now() ,
PRIMARY KEY (`id`) ,
UNIQUE INDEX `user_gift_UNIQUE` (`fb_user_id` ASC, `gift_id` ASC) );
Run Code Online (Sandbox Code Playgroud)

我想在该表中插入一行,但如果该键存在,则什么都不做!我不希望生成错误,因为密钥存在.

我知道有以下语法:

INSERT ... ON DUPLICATE KEY UPDATE ...
Run Code Online (Sandbox Code Playgroud)

但是有类似的东西:

INSERT ... ON DUPLICATE KEY DO NOTHING 
Run Code Online (Sandbox Code Playgroud)

mysql sql unique-key

175
推荐指数
2
解决办法
13万
查看次数

MySQL - 创建表时一起使用时"PRIMARY KEY","UNIQUE KEY"和"KEY"的含义

任何人都可以解释一下目的PRIMARY KEY,UNIQUE KEY并且KEY,如果将它放在CREATE TABLEMySQL 中的单个语句中?

CREATE TABLE IF NOT EXISTS `tmp` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `uid` varchar(255) NOT NULL,
  `name` varchar(255) NOT NULL,
  `tag` int(1) NOT NULL DEFAULT '0',
  `description` varchar(255),
  PRIMARY KEY (`id`),
  UNIQUE KEY `uid` (`uid`),
  KEY `name` (`name`),
  KEY `tag` (`tag`)
) ENGINE=InnoDB AUTO_INCREMENT=1 ;
Run Code Online (Sandbox Code Playgroud)

如何将此查询转换为MSSQL?

mysql sql-server primary-key unique-key

63
推荐指数
2
解决办法
13万
查看次数

首先使用EF代码的唯一键

我的项目中有以下模型

public class Category
{   
    public Guid ID { get; set; }
    [Required(ErrorMessage = "Title cannot be empty")]
    public string Title { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

而我正在尝试制作一个Title独特的密钥,我搜索解决方案,但找不到任何.可以建议我怎么做,拜托?

c# unique-key ef-code-first entity-framework-4.1

62
推荐指数
2
解决办法
7万
查看次数

如何向现有表添加唯一键(具有非唯一行)

我想在现有表中添加复杂的唯一键.主要从4个领域(包括user_id,game_id,date,time).但是表有非唯一的行.我知道我可以删除所有重复的日期,然后添加复杂的密钥.

可能存在另一种解决方案而不搜索所有重复数 (比如添加唯一的忽略等).

UPD我搜索过,如何删除重复的mysql行 - 我认为这是很好的解决方案. 仅使用MySQL查询删除重复项?

mysql unique-key

58
推荐指数
3
解决办法
15万
查看次数

如何从mysql表中删除唯一键

我需要从我的mysql表中删除一个唯一的密钥.如何使用mysql查询删除它.

我试过这个,但它没有用

alter table tbl_quiz_attempt_master drop unique key;
Run Code Online (Sandbox Code Playgroud)

请帮我

谢谢

mysql sql unique-key

54
推荐指数
7
解决办法
17万
查看次数

Sql Server Unique Key也是索引吗?

我在表中有一个列(例如UserName),我想确保它是唯一的.所以我为该列创建了一个唯一键,并将其命名为IX_Users_UserName.

现在,如果我根据用户名搜索大量用户,我想确保该字段有索引.

我是否需要创建单独的索引,或者是唯一的键还被视为索引,就像主键是群集唯一键一样?

sql-server indexing unique-key

51
推荐指数
2
解决办法
2万
查看次数

如何使用EF6和SQL Server捕获UniqueKey Violation异常?

我的一个表有一个唯一的密钥,当我尝试插入一个重复的记录时,它会按预期抛出异常.但我需要区分唯一的密钥异常,以便我可以为唯一的密钥约束违规自定义错误消息.

我发现所有的解决方案在网上提出投ex.InnerExceptionSystem.Data.SqlClient.SqlException和检查,如果Number属性等于2601或2627,如下所示:

try
{
    _context.SaveChanges();
}
catch (Exception ex)
{
    var sqlException = ex.InnerException as System.Data.SqlClient.SqlException;

    if (sqlException.Number == 2601 || sqlException.Number == 2627)
    {
        ErrorMessage = "Cannot insert duplicate values.";
    }
    else
    {
        ErrorMessage = "Error while saving data.";
    }
}
Run Code Online (Sandbox Code Playgroud)

但问题是,铸造ex.InnerExceptionSystem.Data.SqlClient.SqlException原因无效的转换错误,因为ex.InnerException实际上是一个类型的System.Data.Entity.Core.UpdateException,不是System.Data.SqlClient.SqlException.

上面的代码有什么问题?如何捕获Unique Key Constraint违规?

c# sql-server exception-handling unique-key entity-framework-6

44
推荐指数
5
解决办法
4万
查看次数