相关疑难解决方法(0)

在MySQL触发器中抛出错误

如果我有一个trigger before the update表,我怎么能抛出一个阻止该表更新的错误?

mysql database triggers

167
推荐指数
6
解决办法
7万
查看次数

在Django中的字段中添加额外的约束

在进行子类化时db.models.Model,有时需要添加额外的检查/约束.

例如,我有一个Eventstart_date和的模型end_date.

我想在字段或模型中添加验证,以便end_date > start_date.

有多少种方法可以做到这一点?

至少我知道这可以models.ModelModelForm验证内部完成.

但是如何依附于田野和models.Model

django django-models django-forms

29
推荐指数
4
解决办法
1万
查看次数

Mysql CHECK约束

可能重复:
MySQL中的CHECK约束无效

我是学生,现在我必须弄清楚检查的意义.我们有一些代码:

CHECK (CHAR_LENGTH(PLZ) = 4) 
Run Code Online (Sandbox Code Playgroud)

现在我必须弄清楚它到底在做什么.问题是我在互联网上找不到任何东西(或者我使用谷歌做了一些完全错误的事情).我创建了这个代码来测试它:

CREATE TABLE Test(
    ID CHAR(4),
    CHECK (CHAR_LENGTH(ID) = 4)
);

INSERT INTO Test(ID) VALUES ('12345');
Run Code Online (Sandbox Code Playgroud)

问题是我无法找到与CHECK约束删除行的任何区别.现在我问你?我使用与否的区别是什么.

mysql sql

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

设计需要包含成分和子配方的配方数据库

我正在设计一个需要非常灵活的配方数据库,因为它将直接与我们的后台库存系统进行通信.这是我到目前为止关于表格的内容:

  • 食谱:此表将包含食谱日期:名称,烹饪所需的步骤等.
  • 成分/库存:这是我们的库存,所以这将包含我们的食谱中将使用的每个产品的信息.
  • 食谱行项目:这是一个棘手的表,我想能够链接到这里的成分以及食谱所需的数量,但我还需要能够直接包括食谱表中的食谱(如marinara酱)我们在内部制作,这就是为什么我无法找出设计这张桌子的最佳方法.

基本上,配方行项目表需要能够链接到成分表或配方表,具体取决于需要哪个行项目,我想知道什么是最有效的处理方式.

非常感谢你提前!

mysql database-design

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

MySQL触发器可以模拟CHECK约束吗?

我想在MySQL中使用CHECK约束,但它不受支持.(与其他RDBMS不同,它会理解但不强制执行CHECK.)

我看过一些触发器的解决方法.但他们倾向于为相关字段设置默认值,而不是返回错误.

如果不满足条件,是否可以构造一个返回错误的触发器?

最终我想要一个复制CHECK约束的触发器.

mysql triggers constraints

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

限制列以仅接受2个值

我在表格中有一个名为"患者类型"的列.我想确保只有2个值可以插入到列中,opd或者被允许,除此之外,所有其他输入都无效.

以下是我想要的一个例子

在此输入图像描述

如何确保该列仅接受"opd"或"已接纳"作为"患者类型"列的数据.

mysql sql database input

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

mysql 检查约束,其中两列之一应为空

(对不起,如果这是一个重复的帖子,但我似乎找不到这个问题的例子)

我有一个有 4 列的 mysql 表,如下所示:

SomeTable
=========
ID (int)
name (varchar(255))
column1 (varchar(255))
column2 (double)
Run Code Online (Sandbox Code Playgroud)

我现在想要做的是添加一个约束,以便始终有一列(column1 或 column2)具有空值。我尝试了以下方法:

ALTER TABLE mytable 
    ADD CHECK (
        (column1 IS NOT NULL && column2 IS NULL) || 
        (column2 IS NOT NULL && column1 IS NULL)
    )
Run Code Online (Sandbox Code Playgroud)

但它似乎不起作用,因为我仍然可以遇到这样的情况:

CASE1:
------
name: bla
column1: null
column2: null

CASE2:
------
name: bla
column1: somevalue
column2: 123
Run Code Online (Sandbox Code Playgroud)

我怎样才能让它工作,以便在我尝试 case1 和 case2 时出现错误?

(另外:如果我没记错的话:我使用的约束可以缩短,但我不记得它是如何完成的。所以如果有人帮助我,我会很高兴!)

mysql check-constraint

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

MySql工作台CHECK约束

这里我想在记录插入数据库之前创建2个CHECK约束.

ALTER TABLE SubjectEnrollment
ADD CONSTRAINT register CHECK (register <= classSize AND register >=0),
ADD CONSTRAINT available CHECK (available <= classSize AND available >= 0);
Run Code Online (Sandbox Code Playgroud)
  1. register属性不应超过classSize属性且小于0.
  2. available属性不应超过classSize属性且小于0.

当我在MySql Workbench中键入此语法时,它会抛出"语法错误:意外'检查'(检查)'.我应该如何使用TRIGGER添加这些?

谢谢.

mysql check-constraints mysql-workbench

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

Django 2个字段之一不能为null

我有一个与此模型类似的模型:

class Person(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    field1= models.IntegerField(null=True)
    field2 = models.IntegerField(null=True)
Run Code Online (Sandbox Code Playgroud)

至少一个字段,field1或者field2不能为null。如何在模型中验证?

python django python-3.x

5
推荐指数
2
解决办法
516
查看次数

MySQL是否支持检查约束?

MySQL是否支持检查约束?

我可以在MySQL中执行以下脚本而不会出错.

ALTER TABLE  EMP_DB_DESIGN_EXCEL  ADD (
   CONSTRAINT CHK_EMP_IS_ACTIVE CHECK (IS_ACTIVE IN ('Y','N')));
Run Code Online (Sandbox Code Playgroud)

但是,如果我查询它没有反映:

 SELECT * FROM information_schema.TABLE_CONSTRAINTS T where t.table_name='EMP_DB_DESIGN_EXCEL';
Run Code Online (Sandbox Code Playgroud)

mysql check-constraints

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