标签: check-constraints

OCL限制检查Eclipse Papyrus

有没有人设法检查Eclipse Papyrus中建模的类图上的OCL约束?我已经定义了一个简单的测试配置文件,只对一个构造型属性有一个约束:

{OCL} self.property > 0
Run Code Online (Sandbox Code Playgroud)

构造型扩展了Property元类,因此我将它应用于类属性,并将构造型的属性设置为0.但是我从未在上下文菜单中使用Validation> Validate Model命令出错.

任何帮助都会非常感激.

谢谢你提前.

uml eclipse-plugin check-constraints ocl papyrus

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

在Oracle SQL中检查CONSTRAINT

我有以下表Goods_In_Wagon(Goods_ID,Wagon_ID,Total_Weight).我需要创建一些if语句检查约束

"如果WAGON_ID介于90和99之间,则Total_Weight必须大于10." AND"如果WAGON_ID介于100和110之间那么Total_Weight必须大于20." AND"如果WAGON_ID介于111和120之间那么Total_Weight必须大于30."

这在SQL Oracle中是否可行,如果它是如何实现它的话

sql oracle constraints check-constraints

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

当另一列具有特定值时,列上的NOT NULL约束

create table test (
    col1 varchar(20),
    col2 varchar(20)
)
Run Code Online (Sandbox Code Playgroud)
  1. 当col1的值为'1'时,col2不能为空.
  2. 当col1具有任何其他值时,col2可以为null.

有没有办法根据特定列的值编写检查约束?

postgresql check-constraints

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

如何创建一个约束,以确保输入的日期始终> =今天或未来的日期?

我创建了一个名为Project的表,其中有两列ProjectID和StartDate.我想创建一个约束,以确保所包含的日期始终等于今天或未来日期.

我已经尝试了下面的代码,但得到了一个缺少表达式错误.仅在创建表后添加约束.

    CREATE TABLE  PROJECT
    (ProjectID NUMBER(7), 
    StartDate date NOT NULL, 
    CONSTRAINT PK_PROJECTID PRIMARY KEY (ProjectID)
    );

    ALTER TABLE PROJECT
    ADD CONSTRAINT PROJECT_Check_StartDate CHECK(StartDate => Current_date);
Run Code Online (Sandbox Code Playgroud)

sql oracle check-constraints

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

使用MySQL中的检查约束来控制字符串长度

我遇到了问题!

我已经使用MySQL设置了我的第一个检查约束,但不幸的是我遇到了问题.插入应该使测试失败的行时,无论如何都要插入行.

结构:

CREATE TABLE user (
  id INT UNSIGNED NOT NULL AUTO_INCREMENT,
  uname VARCHAR(10) NOT NULL,
  fname VARCHAR(50) NOT NULL,
  lname VARCHAR(50) NOT NULL,
  mail VARCHAR(50) NOT NULL,
  PRIMARY KEY (id),
  CHECK (LENGTH(fname) > 30)
);
Run Code Online (Sandbox Code Playgroud)

插入声明:

INSERT INTO user VALUES (null, 'user', 'Fname', 'Lname', 'mail@me.now');
Run Code Online (Sandbox Code Playgroud)

fname列中字符串的长度应该太短,但无论如何都要插入.

我很确定我错过了一些基本的东西.

mysql check-constraints

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

T-SQL:CHECK约束不起作用

我有以下T-SQL架构.我遇到的问题是Download表上的检查约束不起作用.我仍然可以将记录插入到包含该表NULL的两个值ProductIdCategoryId.为什么会这样?

我希望两个ProductIdCategoryId列都允许NULL值,但对于任何给定的记录,只允许其中一个设置为NULL,另一个需要是CategoryProduct表的相应Id .

CREATE TABLE Category (
    Id int IDENTITY(1,1) NOT NULL PRIMARY KEY,
    Description nvarchar(100) NULL,
    ParentCategoryId int NULL
    CONSTRAINT fk_CategoryId_CategoryId FOREIGN KEY (Id) REFERENCES Category(Id)
)
GO

CREATE TABLE Product (
    Id int IDENTITY(1,1) NOT NULL PRIMARY KEY,
    Title nvarchar(100) NOT NULL,
    TagLine nvarchar(MAX) NOT NULL,
    Description nvarchar(MAX)NULL,
    CategoryId int NOT NULL,
    ImageUrl nvarchar(255) NULL,
    Keywords nvarchar(200) NOT …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server check-constraints

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

检查约束中的括号问题

我正在尝试创建以下检查约束.

(
   [Href] IS NOT NULL AND
   [ETag] IS NOT NULL AND
   [UserName] IS NOT NULL AND
   [Password] IS NOT NULL AND
   [UID] IS NOT NULL
)
OR
(
   [Href] IS NULL AND
   [ETag] IS NULL AND
   [UserName] IS NULL AND
   [Password] IS NULL AND
   [UID] IS NULL
)
Run Code Online (Sandbox Code Playgroud)

我可以保存它并且没有错误.但SSMS删除了两个内括号(这样在开始处只有左括号,在结尾处只有右括号).

这似乎完全改变了意义.我希望所有这些列都为null或者它们都不为null.有没有理由说SQL Server无法处理这个?

sql-server check-constraints

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

SQL Server 2012:使用默认值检查约束

我有以下专栏

EffectiveDate       Date NOT NULL  default getDate(),    
  CONSTRAINT chk_EffectiveDate CHECK (EffectiveDate >= getDate() AND  EffectiveDate <= TerminationDate ) ,

TerminationDate Date NOT NULL default '12/31/9999',
  CONSTRAINT chk_TerminationDate CHECK (TerminationDate > getDate() AND TerminationDate >= EffectiveDate),
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是,如果我没有在那些列中输入值,它会抛出checkconstraint错误,它不接受默认值

我想要实现的是什么?

check-constraints sql-server-2012

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

SQL Server中电话号码的约束

电话号码的约束为7位数.如何检查它是否是SQL Server中的7位数?

CREATE TABLE Customer
(
    C_ID INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
    C_Name VARCHAR(255) NOT NULL,
    Phone INT 
);
Run Code Online (Sandbox Code Playgroud)

sql-server check-constraints

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

CHECK约束内的UNIQUE

这个问题是检查约束SQL中一个IF.我想做类似于以下检查的事情(抛出ORA-00936: missing expression异常):

ALTER TABLE t_table
    ADD CONSTRAINT chk_unique_active CHECK
    ( 
        ( tb_active = 0 ) OR  
        ( tb_active = -1 AND UNIQUE(tb_active, tb_img, tb_objid)) 
    );
Run Code Online (Sandbox Code Playgroud)

目标是确保(在DBMS级别)只有一个具有相同objid的行是活动的,尽管可以复制非活动行(行的历史视图).

它可以在触发器中完成,但在INSERT问题之前使用UNIQUE约束与检查中所解释的检查似乎更好.

这可能吗?

sql oracle check-constraints

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