`
luzl
  • 浏览: 571921 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

DB2 的CHECK不检查NULL值

    博客分类:
  • DB2
阅读更多
Create table test.testchk(
col1 integer check(col1 in (1,2,3))
);
Insert into test.testchk(col1) values(null);

执行成功了,大家想想这是不是bug啊。
分享到:
评论

相关推荐

    DB2约束基础

    在DB2中,主键约束用于定义表的唯一标识,不允许有重复值且不能为空。创建主键约束时,DB2会自动创建索引来提高查询效率。例如: ```sql CREATE TABLE Employees ( EmployeeID INT PRIMARY KEY, Name VARCHAR(50...

    DB2数据库SQL语句错误代码查询

    - **01003**:尝试向不允许为NULL的列插入NULL值。 - **01004**:列名引用不存在或数据类型不匹配。 - **01005**:SQLDA(SQL描述数组)错误,可能是因为SQLDA结构不正确。 - **01007**:没有足够的权限执行操作。 -...

    DB2 OBJECTS

    2. **约束条件的理解及应用**:考生需熟悉各种约束条件(如`NOT NULL`、默认值、`CHECK`、`UNIQUE`及参照完整性约束),并能明确何时及如何使用这些约束。 3. **创建数据库表**:考生需具备使用不同数据类型及约束...

    DB2异常汇总-中文

    - **说明**: 如果索引中不包含NULL值,那么WHERE NOT NULL条件将被忽略。 47. **+65001538 - 不能更改或者建立已命名的表为从属表** - **SQLState**: 65001 - **说明**: 不能将已命名的表更改为从属表。 48. **...

    DB2错误解决手册

    - **01524** - **列函数排除NULL值**:在计算列函数时,可能会排除由算术表达式产生的NULL值。这取决于具体的上下文。 - **01526** - **隔离级别升级**:在某些情况下,DB2会自动提升隔离级别以防止数据冲突。 - **...

    DB2_SQLSTATE__消息异常

    - **01003**:尝试向不允许存储NULL值的列中插入NULL值。 - **01004**:在指定范围之外使用了一个值,例如日期超出允许的范围。 - **01005**:SQL描述区域(SQLDA)存在错误。 - **01007**:用户没有执行某些操作所...

    DB2 SQL错误西信息查询

    - **01003** - 当用户试图删除或更新包含NULL值的行时发生。 - **01004** - 试图对一个不存在的索引进行操作。 - **01005** - SQL描述区域错误。 - **01007** - 用户没有足够的权限执行操作。 - **0100C** - 锁超时...

    IBM DB2 700 考试真题库 附答案

    当创建了一个带有检查选项的视图v1,它从tab1表中选择a大于250的记录,任何试图插入不符合这个条件的值都会失败。选项A和B试图插入的a值小于250,所以它们会失败;选项C直接向tab1插入,不受视图约束影响,但视图不...

    DB2错误代码.doc

    又如01003,当从列函数中移除NULL值时也会发出此类警告。这类警告通常不会阻止操作继续进行,但需要用户注意,以避免潜在的问题。 通过以上对DB2中的SQLSTATE类代码及其含义的详细介绍,我们可以了解到在DB2中遇到...

    db2V9730认证练习五表视图索引.pdf

    8. 阻止特定值插入:不能用于限制特定值插入到特定列的是A. Index。索引用于加快查询速度,而不是限制数据输入。限制值插入通常通过B. Check约束、C. 引用约束或D. 默认约束来实现。 9. LIKE语句:当执行`CREATE ...

    DB2 701 考试题库

    DB2 701 考试题库涵盖了IBM的数据库管理产品DB2的相关知识,主要涉及权限管理、视图创建、表空间操作、索引构建、外键约束以及系统目录等多个方面。以下是对这些知识点的详细说明: 1. **用户权限与表空间管理**: ...

    DB2 错误代码

    - **01003**:从列函数的参数消去 NULL 值。 - **01004**:字符串值在指定给具有较短长度的另一字符串数据类型时被截断。 - **01005**:SQLDA 中的条目数不够。 - **01007**:未授予特权。 - **0100C**:从过程...

    本文档的知识和操作基本上基于DB2数据库

    - `NOT NULL` 约束:用于指定字段不允许为空,例如 `sno INT NOT NULL`。 **三、数据操作和事务处理** DB2 支持 SQL 标准的数据操作,如 `INSERT`, `UPDATE`, `DELETE`,并支持事务(Transaction)处理,确保数据...

    db2错误代码

    - **01003**:从列函数的参数消去NULL值。 - **01004**:字符串值在指定给具有较短长度的另一字符串数据类型时被截断。 - **01005**:SQLDA中的条目数不够。 - **01007**:未授予特权。 - **0100C**:从过程返回了一...

    IBM DB2 - SQL Reference for Cross-Platform Development

    - **非空(Not Null)**:确保列中不允许出现NULL值。 - **唯一(Unique)**:确保列中的值都是唯一的。 - **检查(Check)**:指定列的值必须满足某些条件。 - **默认(Default)**:为没有显式赋值的列指定默认值。 #### ...

    db2 for i reference English version

    常见的约束包括NOT NULL、UNIQUE、CHECK等。 - **索引(Indexes)**:索引是用来加速数据检索的数据库结构。合理地使用索引可以显著提高查询性能。 - **触发器(Triggers)**:触发器是一种特殊类型的存储过程,...

    sql语句使用大全策略

    col5_check int NOT NULL CHECK(col5_check >= 18 AND col5_check ), col6_check nchar(9) NOT NULL CHECK(col6_check LIKE 'msd0902[0-9][^6-9]'), cola_primary nchar(5) NOT NULL PRIMARY KEY, colb_unique ...

    SQL Reference

    - **检查约束 (Check Constraints)**: 检查约束定义了列值必须满足的条件,以确保数据的有效性。 - **触发器 (Triggers)**: 触发器是在特定事件(如插入、删除或更新操作)发生时自动执行的一段代码,用于实现复杂的...

    MSSQLServer中大数据量表的查询优化

    常见的数据库产品包括Access、MSSQL Server、Oracle、DB2等。本文讨论的是基于MSSQL Server 2000的网管系统,在运行四个月后出现复杂条件查询无法返回结果的问题。经调查发现,原因是复杂的SQL语句查询超时,这主要...

Global site tag (gtag.js) - Google Analytics