`

DB2 Sql Code

阅读更多
打开db2 "Command Window"命令行, 输入:
db2 ? sql+num

例如
db2 ? sql407 


返回
引用
db2 ? sql407


SQL0407N Assignment of a NULL value to a NOT NULL column
          "<name>" is not allowed.

Explanation:

One of the following occurred:

o   The update or insert value was NULL, but the object column
    was declared as NOT NULL in the table definition.
    Consequently:

    -   NULL values cannot be inserted into that column.

    -   An update cannot set values in that column to NULL.

    -   A SET transition-variable statement in a trigger cannot set
        values in that column to NULL.

o   The update or insert value was DEFAULT, but the object column
    was declared as NOT NULL without WITH DEFAULT in the table
    definition.  Consequently:

    -   A default value of NULL cannot be inserted into that
        column.

    -   An update cannot set default values of NULL in that column.

    -   A SET transition-variable statement in a trigger cannot set
        default values of NULL in that column.

o   The column name list for the INSERT statement omits a column
    declared NOT NULL and without WITH DEFAULT in the table
    definition.

o   The view for the INSERT statement omits a column declared NOT
    NULL and without WITH DEFAULT in the base table definition.



If the value for "<name>" is of the form "TBSPACEID=n1,
TABLEID=n2, COLNO=n3", then the column name from the SQL
statement was not available when the error was issued. The values
provided identify the tablespace, table, and column number of the
base table that does not allow NULL value.

Federated system users: this situation can be detected by the
federated server or by the data source.  Some data sources do not
provide the appropriate values for "<name>".  In these cases the
message token will have the following format: "<data
source>:UNKNOWN", indicating that the actual value for the
specified data source is unknown.

The statement cannot be processed.

Note: Under some circumstances, the token "<name>" may not be
       filled in (sqlerrmc field of the SQLCA not filled in).

User Response:

Correct the SQL statement after examining the object table
definition to determine which columns of the table have the NOT
NULL attribute and do not have the WITH DEFAULT attribute.

If the value for "<name>" is of the form "TBSPACEID=n1,
TABLEID=n2, COLNO=n3", you can determine the table name and
column name using the following query:


     SELECT C.TABSCHEMA, C.TABNAME,
            C.COLNAME
        FROM SYSCAT.TABLES AS T,
             SYSCAT.COLUMNS AS C
        WHERE T.TBSPACEID = n1
        AND T.TABLEID = n2
        AND C.COLNO = n3
        AND C.TABSCHEMA = T.TABSCHEMA
        AND C.TABNAME = T.TABNAME


The table and column identified by this query may be the base
table of a view for which the SQL statement failed.

Federated system users: if the reason is unknown, isolate the
problem to the data source failing the request (see the problem
determination guide for procedures to follow to identify the
failing data source) and examine the object definition for that
data source. Remember that the defaults (NULL and NOT NULL) are
not necessarily the same between data sources.

sqlcode :  -407

sqlstate :  23502

分享到:
评论

相关推荐

    DB2错误大全,SQL CODE错误信息

    ### DB2错误大全,SQL CODE错误信息 在处理DB2数据库的过程中,我们经常会遇到各种各样的问题,其中很多问题都与SQL CODE和SQL State密切相关。本文将详细介绍一系列常见的SQLCODE和SQLState错误信息及其含义,旨在...

    DB2报错:SQL10007N Message "-1390" could not be retrieved. Reason code.doc版下载

    DB2 报错:SQL10007N Message "-1390" could not be retrieved. Reason code 的解决方案 在安装 DB2 9.7 之后,某人发现 db2inst1 用户下无法运行一切 db2 命令,如果跑到 db2 的 bin 目录下运行 db2 命令,会给出...

    DB2_CODE_STATE.docx

    1. **+012 01545**:未限定的列名被解释为一个有相互关系的引用,这意味着在 SQL 查询中,你可能引用了一个没有明确指定表的列名,DB2 自动尝试将其关联到其他已知的列。 2. **+098 01568**:动态 SQL 语句以分号...

    DB2常见sql异常负数码解释

    ### DB2 SQL异常负数码详解 #### 一、概述 在DB2数据库管理系统的使用过程中,用户可能会遇到各种SQL执行异常情况。为了更好地理解和解决这些问题,本文将对一系列常见的DB2 SQL异常及其负数SQL代码进行详细介绍。...

    DB2中几种遇到的SQL1032N出错的解决

    DB2中几种遇到的SQL1032N出错的解决

    db2错误码一览表

    ### DB2错误码一览表详解 #### 概述 在使用DB2数据库的过程中,难免会遇到各种错误。为了帮助用户快速定位并解决这些问题,本文档将详细介绍一系列常见的DB2错误码及其含义。这些错误码主要分为正数和负数两大类,...

    DB2数据库CODE码

    ### DB2数据库CODE码解析:理解SQLCode的重要性 在DB2数据库管理中,SQLCode扮演着至关重要的角色,它是DB2处理SQL语句后返回的一个整数值,用于指示SQL语句执行的结果。SQLCode可以是正值、零或负值,分别表示警告...

    DB2-ErrorCode解释大全

    当SQL语句中引用的对象(如表、视图等)在当前DB2环境中并未定义时,会触发此类错误。解决方法是检查并确认对象是否已正确创建。 **SQLCODE:** +218 **SQLSTATE:** 01537 **说明:** 因为SQL语句引用一个远程对象...

    db2 错误码 大全

    - **描述**: 尝试执行了DB2不支持的SQL语法。 ##### 12. SQL执行计划错误 - **SQLCODE**: +21801 - **SQLSTATE**: 537 - **描述**: 在执行SQL语句时,其执行计划出现错误。 ##### 13. PLAN表问题 - **SQLCODE**: +...

    db2错误一览表

    #### SQL Code +33901569 - DB2版本兼容性问题 +33901569错误表示当前的DB2版本与系统环境不兼容,特别是当从旧版本升级到DB2 2.2时可能会遇到此类问题。 #### SQL Code +39401629 - 使用不支持的特性错误 如果尝试...

    DB2错误代码大全

    不支持的DB2版本(SQL Code:+2040,SQL State:1532) - **描述**:当前使用的DB2版本不支持特定的操作。 - **处理建议**:升级DB2版本或修改操作以适应当前版本。 ##### 9. SQL语句语法错误(SQL Code:+2060,...

    DB2错误代码(DB2错误代码大全)

    在使用DB2过程中,可能会遇到各种错误,这些错误通常由系统通过错误代码(Error Code)和SQLSTATE来表示。本文将深入解析DB2错误代码大全,帮助读者理解和解决DB2数据库操作中的常见问题。 首先,我们要理解...

    db2 sqlcode errorcode

    本篇文章将深入探讨DB2中出现的"SQLCODE error code"问题,以及与之相关的SQLSTATE。 DB2是一个功能强大的关系型数据库管理系统,广泛应用于企业级应用中。在操作DB2数据库时,可能会遇到SQL错误,这些错误通常会以...

    db2code.zip

    《DB2Code.zip:数据库驱动的代码生成框架详解》 DB2Code.zip 是一个工具包,专注于通过读取数据库信息自动生成相应的Java实体类(Entity)、数据访问对象(DAO)、服务层(Service)以及控制器(Controller)代码...

    DB2 .NET 驱动绿色版 c# ASP.net 连接

    在处理“SQL1159 Initialization error with DB2 .NET Data Provider, reason code 2, tokens”这类错误时,通常是因为驱动程序或运行库的问题。下面将详细讲解如何使用DB2 .NET驱动以及如何解决此类错误。 首先,...

    Toad_for_DB2_使用指南

    Toad for DB2 的 SQL 编辑器支持多种增强功能,如语法高亮、代码片段、代码导航等,这些功能能够显著提高 SQL 编写的效率和准确性。 **使用方法:** 1. **编写SQL**:在编辑器中直接输入 SQL 语句。 2. **辅助工具*...

    db2数据库JDBC驱动

    3. 执行SQL:创建`Statement`或`PreparedStatement`对象,编写并执行SQL语句。 4. 处理结果:通过`ResultSet`对象获取查询结果,并遍历处理数据。 5. 关闭资源:在操作完成后,记得关闭`ResultSet`、`Statement`和`...

    DB2错误代码对照表

    - **SQL Code 3390**:DB2版本不兼容问题,尤其是在升级或迁移数据库时。 - **SQL Code 4450**:类型转换失败,例如试图将字符串转换为数字类型但未能成功。 - **SQL Code 5350**:权限问题,可能是因为用户没有足够...

    常用数据库sql,db2,Oracle

    ### 常用数据库介绍:SQL、DB2、Oracle #### IBM DB2 DB2是IBM推出的一款关系型数据库管理系统,其发展历程可追溯至1997年对System R系统的继承与创新。自1980年开始,IBM就致力于提供数据库解决方案,并在1983年...

    DB2 SQLSTATE CODE

    "DB2 SQLSTATE CODE" DB2 SQLSTATE CODE 是一种错误代码系统,由 IBM 开发的关系数据库管理系统 DB2 使用。它提供了一种标准化的方式来报告错误和警告信息,以帮助开发者和管理员快速定位和解决问题。 SQLSTATE ...

Global site tag (gtag.js) - Google Analytics