标签: unique-constraint

如何使用LINQ to SQL强制执行唯一约束

我想用LINQ to SQL对两列强制执行唯一约束.我在SQL表上配置了约束,但有没有办法将它与LINQ to SQL一起使用?

唯一约束应用于两列,两列都是外键.

谢谢

编辑:我可以捕获异常,即如果抛出一个非常特殊的异常.另一种方法是在运行任何更新/插入之前检查表的状态.对于一个非常简单的任务来说,似乎都需要做太多的工作.

sql linq unique-constraint linq-to-sql

1
推荐指数
1
解决办法
1639
查看次数

在 Oracle 中使用 nvl 创建唯一约束

当我需要将空值视为相等时,如何创建唯一约束。

为了

更改表 T1 添加约束 T1_UN 唯一 (nvl(C1, ' '))

我明白了

 ORA-00904: : invalid identifier
Run Code Online (Sandbox Code Playgroud)

nvl 点数

谢谢!

oracle unique-constraint

1
推荐指数
1
解决办法
1932
查看次数

自动递增,但忽略列中的现有值

我有一张桌子:

create table DB.t1 (id  SERIAL,name varchar(255));
Run Code Online (Sandbox Code Playgroud)

并插入一些数据:

insert into DB.t1 (name) values ('name1');
insert into DB.t1 (id,name) values (5,'name2');
insert into DB.t1 (name) values ('name3');
insert into DB.t1 (name) values ('name4');
insert into DB.t1 (name) values ('name5');
insert into DB.t1 (name) values ('name6');
insert into DB.t1 (name) values ('name7');
select * from DB.t1;
Run Code Online (Sandbox Code Playgroud)

然后我可以看到:

1 name1
5 name2
2 name3
3 name4
4 name5
5 name6   -- how to make auto-increment jump over '5'?
6 name7
Run Code Online (Sandbox Code Playgroud)

但是5次出现两次。如何保持id独特性?

postgresql sequence auto-increment unique-constraint gaps-and-islands

1
推荐指数
1
解决办法
1454
查看次数

Postgres 跨表的唯一组合约束

我有三张桌子 -

file (
  file_id int primary key
  filename text not null
  etc...
)
product (
  product_id int primary key
  etc....
)
product_attachment (
  product_id references product
  file_id references file
)
Run Code Online (Sandbox Code Playgroud)

我想确保当这些是自然连接时,product_id + 文件名是唯一的。到目前为止,我拥有的最佳解决方案是将文件名添加到 product_attachment 表中,但我想知道是否有办法避免这种情况。

sql postgresql foreign-keys unique-constraint

1
推荐指数
1
解决办法
4407
查看次数

如何在两列上独立创建唯一约束顺序

我正在使用Oracle数据库,我需要创建一个如下所示的表.

MAP(Point_One, Poin_Two, Connection_weight).
Run Code Online (Sandbox Code Playgroud)

该表表示有关图表的数据.我想创建一个具有约束的表,以防止插入已存在的连接.

例如,该表已包含此连接:

Point_One | Point_Two | Connection_weight
-----------------------------------------
p_no1     | p_no2     | 10
Run Code Online (Sandbox Code Playgroud)

即使我尝试以不同的顺序添加点,约束也会阻止重复插入此连接.(例如:(p_no2,p_no1,10))

一个简单的UNIQUE(Point_One,Point_Two)约束是不幸的.你有什么建议吗?

sql oracle unique-constraint

1
推荐指数
1
解决办法
178
查看次数

在Oracle数据库中按列名获取约束名称

如何获得Oracle数据库中对应列的唯一的constraint_name?

换句话说,我想按列名获取约束名称。

伪查询此问题:

select constraint_name from table_name tname where tname.column_name = 'columnName';
Run Code Online (Sandbox Code Playgroud)

这可能吗?

oracle unique-constraint

1
推荐指数
2
解决办法
4838
查看次数

android,使用带kotlin的Room,如何在字段上添加唯一约束

每个Annotate索引和唯一性,似乎它可以添加如下所示的唯一约束,

但在AndroidStudio 3中出现错误(编辑器有红色下划线表示"未解析参考:索引"),:

/Users/application/database/DbAuthor.kt
Error:(14, 39) Expecting an element

@Entity(tableName = "author" indices = arrayOf(Index(value = "authorid", unique = true)))
class DbAuthor(

    @ColumnInfo(name = "authorid")
    var authorid: Int? = null,
Run Code Online (Sandbox Code Playgroud)

如何在使用kotlin时在字段上添加唯一约束?

gradle就像:

buildscript {
ext {
    verAndroidSupport = '27.0.0'
    arch = "1.0.0"
    archRoomVersion = "1.0.0"

}
ext.kotlin_version = '1.2.20'
Run Code Online (Sandbox Code Playgroud)

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'


//arch
implementation "android.arch.lifecycle:runtime:${arch}"
implementation "android.arch.lifecycle:extensions:${arch}"
annotationProcessor "android.arch.lifecycle:compiler:${arch}"
//room
compile "android.arch.persistence.room:runtime:${archRoomVersion}"
annotationProcessor "android.arch.lifecycle:compiler:${arch}"

annotationProcessor "android.arch.persistence.room:compiler:${archRoomVersion}"
kapt "android.arch.persistence.room:compiler:1.0.0-alpha1"
Run Code Online (Sandbox Code Playgroud)

unique-constraint kotlin android-room

1
推荐指数
1
解决办法
1904
查看次数

使用 SQL Server CAST([column] AS DATE) 函数的唯一约束

我有一个appointments表,其中包含(除其他外)a[personid]和一[appdate]datetime(2)数据类型。我想添加一项限制,以防止任何人personid在任何一天获得多次预约。

我尝试过,但没有成功

ALTER TABLE dbo.tblappointments
    ADD CONSTRAINT SingleApp UNIQUE (PersonID, CAST(Appdate AS DATE))
Run Code Online (Sandbox Code Playgroud)

谢谢。

sql sql-server date unique-constraint

1
推荐指数
1
解决办法
697
查看次数

无论顺序如何,两列的唯一约束

我有一个非常简单的表:

    id  | name   | alternate
--------+--------+------------
     1  |   Joe  |     Joseph
--------+--------+------------
     2  |   Pete |     Peter
--------+--------+------------
Run Code Online (Sandbox Code Playgroud)

等等。

我想在名称和备用列上添加约束,但与顺序无关。例如,我不希望能够插入(3, 'Peter', 'Pete'),因为它本质上与 id 2 相同,只是列颠倒了。

有没有办法做到这一点?

sql postgresql create-table unique-constraint

1
推荐指数
1
解决办法
851
查看次数

如何跨多个表强制执行唯一约束?

我创建了以下两个表来绘制学生和教师的地图:

CREATE TABLE students(
    student_id SERIAL PRIMARY KEY,
    first_name NOT NULL VARCHAR(50),
    last_name NOT NULL VARCHAR(50),
    phone VARCHAR(15) UNIQUE NOT NULL CHECK (phone NOT LIKE '%[^0-9]%'),
    email VARCHAR(30) UNIQUE NOT NULL CHECK (email NOT LIKE '%@%'),
    graduationYear SMALLINT CHECK (graduationYear > 1900)
);

CREATE TABLE teachers(
    teacher_id SERIAL PRIMARY KEY,
    first_name VARCHAR(50) NOT NULL,
    last_name VARCHAR(50) NOT NULL,
    departament VARCHAR(40) NOT NULL,
    email VARCHAR(30) UNIQUE NOT NULL CHECK (email NOT LIKE '%@%'),
    phone VARCHAR(15) UNIQUE NOT NULL CHECK (phone NOT …
Run Code Online (Sandbox Code Playgroud)

sql postgresql database-design constraints unique-constraint

1
推荐指数
1
解决办法
114
查看次数