首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

出现 DB2 SQL Error: SQLCODE = -798, SQLSTATE = 428C9 错误的原因及解决方法

1 错误描述 在通过「DbVisualizer」执行 SQL 语句插入数据的时候,报出如下错误: 2 错误原因 通过观察上述标记出来的错误描述: DB2 SQL Error: SQLCODE = -798..., SQLSTATE = 428C9, SQLERRMC = ID 然后,查询「史上最全的 DB2 错误代码大全」可知,此错误的原因为: -798 428C9 不能把一个值插入到用 GENERATED...16) NOT NULL, PRIMARY KEY (ID) ); 观察上述 SQL 语句及报出信息,我们可以发现在建表语句中,字段 ID 的后面确实定义了GENERATED ALWAYS AS...实际上,在 DB2 中对于自增字段,我们可以通过如下两种方式指定: 第 1 种:GENERATED BY DEFAULT AS IDENTITY 第 2 种:GENERATED ALWAYS AS IDENTITY...NULL GENERATED BY DEFAULT AS IDENTITY, VERSION INTEGER, USER_NAME VARCHAR(126) NOT NULL,

2.4K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java 技术篇 - java同时连接多种数据库执行sql语句的兼容性验证,数据库类型包括:oracle、sqlserver、DB2、人大金仓、达梦、PG、瀚高、polardb

    TRANSACTION 请求没有对应的 BEGIN TRANSACTION ③ 【DB2 数据库不支持分号】SQLSTATE=42601, SQLERRMC=;;de = '报表合并体系1';END-OF-STATEMENT...数据库不支持分号】SQLSTATE=42601, SQLERRMC=;;de = ‘报表合并体系1’;END-OF-STATEMENT db2 数据库测试 报错:com.ibm.db2.jcc.am.SqlSyntaxErrorException...: DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=;;de = '报表合并体系1';END-OF-STATEMENT, DRIVER=4.19.49...com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=;;...返回:影响的行数:0代表无影响 */ Statement st = null; int rs = 0; try {

    2.4K31

    史上最全的 DB2 错误代码大全

    2 错误代码及说明 SQLCode SQLState 状态说明 000 00000 SQL语句成功完成 01xxx XXX SQL语句成功完成,但是有警告 +012 01545 未限定的列名被解释为一个有相互关系的引用...,提供原来的SQLCODE和SQLSTATE -007 42601 SQL语句中由非法字符 -010 42603 字符串常量非正常终止;检查到有遗漏的引号标志 -029 42601 需要INTO语句 -...NULL为终止 -301 42895 无效的宿主变量数据类型 -302 22001 输入的变量值对指定的列无效 -303 42806 因为数据类型不兼容,不能分配数值 -304 22003 因为数据超出了范围...(在DB2 6之前的版本) -981 57015 当前不是处于允许SQL的状态时,试图在RRSAF中执行SQL -991 57015 调用连接不能建立一个到DB2的隐含或开放连接 -1773 null...-20074 42939 不能建立指定的对象,因为“SYS”是一个保留的前缀 -20100 56059 在被触发的SQL语句中有BIND错误,指定了错误的SQLCODE和SQLSTATE -20101

    4.8K30

    DB2错误代码_db2错误码57016

    2 错误代码及说明 SQLCode SQLState 状态说明 000 00000 SQL语句成功完成 01xxx XXX SQL语句成功完成,但是有警告 +012 01545 未限定的列名被解释为一个有相互关系的引用...,提供原来的SQLCODE和SQLSTATE -007 42601 SQL语句中由非法字符 -010 42603 字符串常量非正常终止;检查到有遗漏的引号标志 -029 42601 需要INTO语句 -...NULL为终止 -301 42895 无效的宿主变量数据类型 -302 22001 输入的变量值对指定的列无效 -303 42806 因为数据类型不兼容,不能分配数值 -304 22003 因为数据超出了范围...(在DB2 6之前的版本) -981 57015 当前不是处于允许SQL的状态时,试图在RRSAF中执行SQL -991 57015 调用连接不能建立一个到DB2的隐含或开放连接 -1773 null...-20074 42939 不能建立指定的对象,因为“SYS”是一个保留的前缀 -20100 56059 在被触发的SQL语句中有BIND错误,指定了错误的SQLCODE和SQLSTATE -20101

    2.6K10

    SQL0805N解决和思考

    一、报错现象 这是一个在使用 DB2数据库过程中比较常见的错误, 报错信息如下 Exception stack trace: com.ibm.db2.jcc.am.SqlException: DB2...SQL Error: SQLCODE=-805, SQLSTATE=51002, SQLERRMC=NULLID.SYSLH203 0X5359534C564C3031, DRIVER=3.66.46...二、关键知识点 先说明几个知识点: [Packages] DB2 中的包是一组信息,其可以控制任何静态SQL语句的编译,部分控制着任何动态SQL语句的编译 以及可以影响在其范围内发出的任何SQL请求的执行...错误复现 这里有一个Java Demo,用来复现SQL0805N错误。 其中通过调用prepareStatement语句但不正常释放来模拟句柄数耗尽。...此种思考结论,不能解释应用人员提出来的:出现报错后再次重试可以继续执行而未出现报错,以及别的一些应用访问数据库正常的现象。 5.2. DB2内存结构 这里主要说明下DB2代理私有内存。

    1.4K50

    proc 编程错误处理机制及null处理

    在连接数据库的过程中我们有的时候可能会遇到连接数据库出错、插入数据出错、sql语句写错等等情况,除了这些,我们还会在插入和读取数据时会遇到处理 null 值的问题,以下代码演示了如何对 sql 执行出错进行处理...void sqlerr() { // 临时变量 charstm[120]; size_tsqlfc, stmlen=120; unsigned int ret = 0; // 让下一次出现错误时不再跳转到函数中...,而是继续下一步(CONTINUE) // 防止处理函数中有执行错误再次调用处理函数而导致的递归 EXEC SQL WHENEVER SQLERROR CONTINUE; // 获取错误的sql语句 ret...*s\n”, stmlen, stm); // sqlca.sqlerrm.sqlerrml 为错误编号长度 // sqlca.sqlerrm.sqlerrmc 为错误内容 printf(“%....*s\n”, sqlca.sqlerrm.sqlerrml, sqlca.sqlerrm.sqlerrmc); // 执行回滚并释放连接 EXEC SQL ROLLBACK WORK RELEASE;

    25610

    关于linux下DB2创建数据库报错问题

    公司业务需要,把服务搭在中标下,在中标下装了DB2 Express-C v9.7.1,之前用着没有问题,隔了一段时间没用,最近又需要用到它,出了一些菜鸟问题,记录下来以免有人和我犯同样的错误。。。...实例用户登录系统,终端db2cc启动图形化界面的控制中心,新建数据库 SQL1032N  No Start database manager command was issued SQLSTATE=57019...我出现这个问题的原因是,忘记在终端启动DB2,这个图形化的工具会给大家错觉,让大家以为DB2已经启动,其实这只是个前段的显示工具,不代表数据库已经在运行。...但是这里又有个新问题 sh: db2admin : not found 这个错误的原因是没有配置好环境变量,通过查找命令 $find / -name db2admin 2>/dev/null 可以找到命令所在的目录.../opt/ibm/db2/V9.7/das/bin/ 把这个路径加入到环境变量中: 先cd 进入用户主目录, vim .bash_profile 在PATH后面加上:/opt/ibm/db2/V9.7/

    2.5K10

    db2 terminate作用_db2 truncate table immediate

    类代码 01:警告 SQLSTATE 值 含义01002 发生 DISCONNECT 错误。01003 从列函数的参数消去 NULL 值。...01643 对 SQL 例程中 SQLSTATE 或 SQLCODE 变量的赋值可能会被覆盖,不会激活任何处理程序。01645 SQL 过程的可执行文件未保存在数据库目录中。...25502 操作在单个事务中不能多次出现。 类代码 26 无效 SQL 语句标识 表 21. 类代码 26:无效 SQL 语句标识 SQLSTATE 值 含义26501 标识的语句不存在。...42630 在嵌套复合语句中不能存在 SQLSTATE 或 SQLCODE 变量声明。42631 SQL 函数或方法中的 RETURN 语句必须包括返回值。...42630 在嵌套复合语句中不能存在 SQLSTATE 或 SQLCODE 变量声明。 42631 SQL 函数或方法中的 RETURN 语句必须包括返回值。

    7.7K20

    (译)优化ORC和Parquet文件,提升大SQL读取性能

    IBM Db2 Big SQL使用的两种常见文件存储格式是ORC和Parquet,这些文件格式以列格式存储数据,以优化读取和过滤列的子集。...由于这种开销,处理以逻辑方式捆绑在一起的这些格式的多个小型文件(例如,属于Big SQL表或分区的文件)会产生大量成本,并降低IBM Db2 Big SQL的读取性能。...在Big SQL中,属于同一表的文件通常存储在同一目录中。IBM Db2 Big SQL的“文件检查工具”有助于识别HDFS中有问题的小文件,并提供文件压缩建议。...SQLCODE=0, SQLSTATE=01003, DRIVER=3.72.24 +------------------+ | 1 | +----------------...SQLCODE=0, SQLSTATE=01003, DRIVER=3.72.24 +------------------+ | 1 | +----------------

    2.9K31

    【SQL】一文详解嵌入式SQL(建议收藏)

    SQLCA 是一个数据结构,SQLCA中有一个存放每次执行SQL语句后返回代码的状态指示变量SQLCODE。...当SQLCODE为零时,表示SQL语句执行成功,否则返回一个错误代码(负值)或警告信息(正值)。...②定义SQL通信区:使用EXEC SQL INCLUDE SQLCA语句定义用于在程序和DBMS之间通信的通信区。SQLCA中包含两个通信变量SQLCODE和SQLSTATE。...如果SQLCODE>0,则表明在该查询结果中没有的更多可用的数据(记录)。如果SQLCODE出现了错误。SQLSTATE 是一个带有5 个字符的字符串。...如果SQLSTATE的值为00000则表示没有错误或异常;如果是其他值,就表明出现了错误或异常。 ③其他说明性语句 ----  程序体 程序体由若干个可执行的SQL语句和主语言语句组成。

    1.3K20

    默认用户名和密码(SQL)

    SQLCODE错误代码(SQL)执行大多数 SQL操作都会发出SQLCODE值。发出的SQLCODE值为0、100和负整数值。 SQLCODE=0表示SQL操作成功完成。...但是,如果SELECT执行聚合操作(例如:SELECT SUM(Myfield)),则聚合操作成功,即使myfield中没有数据,也会发出SQLCODE=0;在这种情况下,SUM返回NULL,%ROWCOUNT...SQLCODE=-n表示错误。负整数值指定发生的错误类型。SQLCODE=-400是通用的致命错误代码。字段约束(SQL)字段约束指定管理字段允许的数据值的规则。...一个字段可能有以下约束: NOT NULL非空:必须在每条记录中为该字段指定值(可接受空字符串)。 UNIQUE唯一:如果在记录中为该字段指定值,则该值必须是唯一值(可接受的空字符串)。...默认值可以是NULL、空字符串或适用于该数据类型的任何其他值。 UNIQUE NOT NULL:必须在每条记录中为该字段指定唯一的值(可接受一个空字符串)。可用作主键。

    5.4K10
    领券