SQL0668N 原因码为 "1",所以不允许操作 SQLSTATE=57016 ORACLE一次失败的导入到DB2 收藏
SQL0668N 原因码为 "1",所以不允许操作 SQLSTATE=57016 ORACLE一次失败的导入到DB2
SQL0668N 原因码为 "1" SQLSTATE=57016 ORACLE导入到DB2
日月明王的BLOG http://sunmoonking.spaces.live.com
利用MTK工具没有成功导入数据,于是用(ORACLE 用MTK工具导入到DB2
http://sunmoonking.spaces.live.com/blog/cns!E3BD9CBED01777CA!751.entry)最后所写的方法手工批量导入。一切顺利。做完后抽样检查,发现有些表出现如下问题。
db2 => select * from TABLE_NAME
USER_FUNCTION_ID USER_ID DEALER_ID FUNCTION_ID CREATE_
BY CREATE_DATE UPDATE_BY UPDATE_DATE
-------------------- -------------------- --------- -------------------- -------
SQL0668N 由于表 "ADMINISTRATOR. TABLE_NAME " 上的原因码为
"1",所以不允许操作。 SQLSTATE=57016
查了下问题原因是原因是装入时有数据违反了检查约束,造成表处于检查挂起状态。网上说可以用set integrity for table_name check immediate unchecked解除表的检查挂起状态, 但是运行完后还是无法访问此表
db2 => set integrity for table_name check immediate unchecked
DB20000I SQL命令成功完成。
db2 => select * from TABLE_NAME
USER_FUNCTION_ID USER_ID DEALER_ID FUNCTION_ID CREATE_
BY CREATE_DATE UPDATE_BY UPDATE_DATE
-------------------- -------------------- --------- -------------------- -------
SQL0668N 由于表 "ADMINISTRATOR. TABLE_NAME " 上的原因码为
"1",所以不允许操作。 SQLSTATE=57016
问题依旧。又试图用再次LOAD的方法使其状态正常,通过分别发出带有 RESTART 或 TERMINATER 选项的 LOAD 来重新启动或终止先前失败的对此表的 LOAD 操作。但是问题依旧。
db2 => LOAD FROM C:\MTK\projects\Unknown7\DataOutScripts\FILENAME_TABLE_NAME.out of DEL restart INTO TABLE_NAME
SQL27902N LOAD RESTART/TERMINATE 在未处于 LOAD PENDING 状态的表上不允许。
再试
C:\Documents and Settings\Administrator>db2 set integrity for TABLE_NAME immediate checked
不成功。
怀疑现在的问题不仅仅是表的问题,于是察看TABLESPACE
db2 =>list tablespaces show detail
表空间标识 = 2
名称 = USERSPACE1
类型 = 数据库管理空间
内容 = 所有持久数据。大型表空间。
状态 = 0x0020
详细解释:
备份暂挂
总计页数 = 40960
可用页数 = 40928
已用页数 = 40448
可用页数 = 480
高水位标记(页) = 40448
页大小(以字节计) = 16384
扩展数据块大小(页) = 32
预取大小(页) = 32
容器数 = 1
最小恢复时间 = 2007-02-13-02.29.51.000000
想通过以下命令使其正常
db2 => alter tablespace USERSPACE1 switch online
DB20000I SQL命令成功完成。
状态一样
于是通过BACKUP来除去备份暂挂状态, 手工备份后恢复正常. 0x0000
db2 backup db DB_NAME tablespace (userspace1)
再解除表的检查挂起状态
db2 => set integrity for tt_user_function immediate checked
DB20000I SQL命令成功完成。
db2 => select count(*) from tt_user_function;
SQL0104N 在 "rom tt_user_function" 后面找到异常标记
";"。预期标记可能包括:"END-OF-STATEMENT"。 SQLSTATE=42601
db2 => select count(*) from tt_user_function
1
-----------
1534
访问正常.
分享到:
相关推荐
在SQL数据库操作中,我们可能会遇到各种错误代码,其中SQLSTATE=57016 SQLCODE=-668是一个常见的错误,特别是在IBM DB2数据库系统中。这个错误通常表示一个操作无法执行,因为对象(如表)正被其他事务占用或者处于...
在使用DB2过程中,可能会遇到各种错误代码,其中SQLSTATE 57016与SQLCODE -668,特别是原因码“7”,是一个常见的错误,通常表示在尝试执行数据库操作时遇到了权限问题。本篇文章将深入探讨这个错误的原因,并提供...
### DB2错误码大全 在使用DB2数据库的过程中,可能会遇到各种各样的错误,了解这些错误码的意义及其解决方法对于数据库管理员来说至关重要。本文将详细介绍DB2中的常见错误码及其含义,帮助用户更好地理解并处理...
### DB2 不允许访问表空间问题解析 #### 一、问题背景及现象 在使用IBM DB2数据库管理系统的过程中,有时可能会遇到无法访问特定表空间的情况。这种情况下,用户可能能够执行SELECT查询,但无法进行UPDATE、ALTER...
以上所述是小编给大家介绍的详解DB2 sqlstate 57016 SQLCODE=-668 原因码 “7”错误的快速解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站...
- `sqlcode=110`, `sqlstate=01561`:用DATA CAPTURE定义的表的更新操作不能发送到原来的子系统。 4. **索引和表空间问题**: - `sqlcode=117`, `sqlstate=01525`:要插入的值的个数不等于被插入表的列数,可能是...
因此,本文旨在整理 DB2 的 SQL、sqlcode、sqlstate 错误码大全,提供详细的错误码说明和用户响应方法,帮助用户快速解决问题,提高工作效率。 SQL0000 - SQL0099 在 DB2 中,SQL0000 - SQL0099 错误码系列主要...
13. **+236**:SQLDA中的SQLN值与期望的不一致(SQLrcode = +236, SQLstate = 01005) - SQLDA(SQL描述区域)中的SQLN字段值与预期的不同。 14. **+237**:值长度不匹配(SQLrcode = +237, SQLstate = 01594) ...
**说明:** 因为SQL语句引用一个远程对象,不能为该SQL语句执行EXPLAIN。 在使用EXPLAIN工具分析查询计划时,如果SQL语句涉及到远程对象,则无法执行EXPLAIN。此时可以考虑其他方式来优化查询。 #### 五、数据类型...
11. **SQL指令解析错误**:`SQLCODE=+206`, `SQLSTATE=01533`表示SQL语句解析失败,可能是因为语法错误或不支持的操作。 12. **优化器使用错误**:`SQLCODE=+218`, `SQLSTATE=01537`表示在使用优化器(EXPLAIN)时...
在使用DB2过程中,可能会遇到各种错误代码,这些代码通常以SQLSTATE形式出现,它们提供了关于数据库操作失败原因的重要信息。SQLSTATE是一种标准的五字符代码,用于识别SQL语句执行时的错误或异常状态。 标题中的...
本文将详细介绍DB2中的部分常见SQL返回码及其对应的SQL状态码,并解释其含义及可能的原因。 #### SQL返回码及其含义 ##### 成功返回码 - **000** (00000): 表示SQL操作成功完成。 - **01xxx**: 通常表示SQL操作...
在文档"DB2 sqlstate错误码大全.doc"中,你可以找到从SQL0000到SQL9399这一范围内的所有错误码的详细解释。这些错误码通常按照以下格式给出: 1. 错误码(如SQL0000):前两位表示大类错误,中间两位表示子类错误,...
DB2-SQLSTATE消息是IBM的DB2数据库系统在处理SQL语句时可能出现的错误或异常情况的反馈机制。SQLSTATE是一种标准化的五字符代码,用于标识SQL操作中遇到的问题,它是由ISO/IEC SQL标准定义的。在这个场景中,我们...
本文将详细介绍一系列常见的SQLCODE和SQLState错误信息及其含义,旨在帮助用户更好地理解这些错误,并能够自行分析问题的原因。 #### SQL CODE和SQL State简介 SQL CODE和SQL State是DB2中用于表示SQL语句执行状态...
通过以上的详细介绍,我们可以看出,DB2中的游标、动态SQL以及异常处理等功能为开发者提供了丰富的工具来处理复杂的数据操作场景。合理利用这些功能可以帮助我们更好地管理和控制数据库操作,提高程序的稳定性和性能...
- **+21801537** (SQLSTATE=1537):因为SQL语句引用一个远程对象,不能为该SQL语句执行EXPLAIN。 - **+21901532** (SQLSTATE=1532):命名的PLANTABLE不存在。 - **+22001546** (SQLSTATE=1546):不正确定义PLANTABLE...
- **Oracle** 和 **DB2** 都支持隐式映射,即将SQL结果自动映射到变量。 - Oracle示例: ```sql SELECT column INTO variable FROM table WHERE condition; ``` - DB2示例: ```sql SELECT column INTO ...
首先,SQLSTATE是SQL标准的一部分,它提供了一种标准化的方式来表示数据库操作中的错误和异常。每个SQLSTATE代码由五个字符组成,前两位表示类别,中间一位表示子类,后两位表示具体的错误或异常。例如,'23505'通常...