DB2 错误编码 查询(二)(转)

DB2 SQLSTATE 讯息

 

类代码 42 语法错误或访问规则违例
表 32. 类代码 42:语法错误或访问规则违例 SQLSTATE 值   
含义 
42501 授权标识不具有对标识对象执行指定操作的特权。 
42502 授权标识不具有执行指定操作的特权。 
42504 无法从指定的权限名撤销指定的特权、安全标号或免除凭证。 
42506 发生所有者授权失败。 
42508 不能将指定的数据库特权授予 PUBLIC。 
42509 因为 STATICRULES 选项而未授权 SQL 语句。 
42511 未能检索 DATALINK 值。 
42512 授权标识对受保护列没有访问权。 
42514 授权标识不具有对象的所有权需要的特权。 
42516 用户映射存储库中的认证失败。 
42519 不允许此授权标识对受保护表执行操作。 
42520 由于此授权标识没有安全标号,所以无法执行内置函数。 
42521 无法将权限或特权授予指定的授权标识。 
42522 此授权标识没有凭证,因此无法保护列或者对该列除去保护。 
42601 字符、标记或子句无效或丢失。 
42602 检测到名称中有无效字符。 
42603 检测到未终止的字符串常量。 
42604 检测到无效数字或字符串常量。 
42605 为标量函数指定的参数的数目无效。 
42606 检测到无效十六进制常数。 
42607 列函数的操作数无效。 
42608 在 VALUES 中使用 NULL 或 DEFAULT 是无效的。 
42609 运算符或谓词的所有操作数都是参数标记。 
42610 不允许参数标记。 
42611 列或参数定义无效。 
42612 语句字符串是一条 SQL 语句,它在它所出现的上下文中是不可接受的。 
42613 子句互斥。 
42614 重复关键字无效。 
42615 检测到无效备用项。 
42616 指定了无效的选项。 
42617 语句字符串是空白或空的。 
42618 不允许主机变量。 
42620 对 UPDATE 子句指定了只读 SCROLL。 
42621 检查约束无效。 
42622 名称或标号太长。 
42623 不能指定 DEFAULT 子句。 
42625 CASE 表达式无效。 
42627 必须在使用 EXPRESSION AS 子句的谓词规范之前指定 RETURNS 子句。 
42628 在变换定义中多次定义了 TO SQL 或 FROM SQL 变换函数。 
42629 必须为 SQL 例程指定参数名。 
42630 在嵌套复合语句中不能存在 SQLSTATE 或 SQLCODE 变量声明。 
42631 SQL 函数或方法中的 RETURN 语句必须包括返回值。 
42633 XMLATTRIBUTES 或 XMLFOREST 的参数需要 AS 子句。 
42634 XML 名称无效。 
42635 XML 名称空间前缀无效。 
42636 缺少 BY REF 子句,或者不正确使用了该子句。 
42637 无法在 DECLARE CURSOR 语句中指定 XQuery 表达式。 
42701 在插入或更新操作或 SET 转换变量语句中检测到重复列名。 
42702 由于名称重复,列引用有歧义。 
42703 检测到一个未定义的列、属性或参数名。  
42704 检测到未定义的对象或约束名。 
42705 检测到未定义的服务器名。 
42707 ORDER BY 内的列名不标识结果表中的列。 
42709 在键列列表中指定了重复的列名。 
42710 检测到重复的对象或约束名。 
42711 在对象定义或 ALTER 语句中检测到重复列名或属性名。 
42712 在 FROM 子句中检测到重复的表标志符。 
42713 在对象列表中检测到重复对象。 
42720 在节点目录内未找到远程数据库的节点名。 
42723 模式中已经存在带有相同特征符的函数。 
42724 不能访问用于用户定义的函数或过程的外部程序。 
42725 直接引用了例程(不是通过特征符或者通过特定实例名进行引用),但是该例程有多个特定实例。 
42726 检测到指定的派生表的名称重复。 
42727 对新表来说,不存在缺省主表空间。 
42728 在节点组定义中检测到重复节点。 
42729 节点未定义。 
42730 容器名已由另一表空间使用。 
42731 容器名已由该表空间使用。 
42732 在 SET CURRENT PATH 语句中检测到重复的模式名。 
42734 检测到重复的参数名、SQL 变量名、游标名、条件名或标号。 
42735 对缓冲池,未定义表空间的节点组。 
42736 在 LEAVE 语句上指定的标号找不到或无效。 
42737 未定义在处理程序中指定的条件。 
42738 在 FOR 语句的 DECLARE CURSOR 语句中指定了重复的列名或未命名的列。 
42739 检测到重复的变换。 
42740 未找到指定类型的变换。未删除任何变换。 
42741 未对数据类型定义变换组。 
42742 类型表或带类型视图层次结构中已存在同类子表或子视图。 
42743 在索引扩展名中未找到搜索方法。  
42744 在变换组中未定义 TO SQL 或 FROM SQL 变换函数。 
42745 例程将用现有方法定义覆盖关系。 
42746 在同一类型层次结构中,方法名不能与结构化类型名相同。 
42748 存储路径对于数据库来说已存在或者被指定了多次。 
42749 对于 XML 模式来说,已经存在具有相同目标名称空间和模式位置的 XML 模式文档。 
4274A 在 XML 模式存储库中未找到 XSROBJECT。 
4274B 在 XML 模式存储库中未找到唯一的 XSROBJECT。 
4274F 在安全标号组件中未定义组件元素。 
4274G 在给定安全标号所使用的安全标号策略中未定义安全标号组件。 
4274H 指定的安全策略不存在指定的访问规则。 
4274I 指定的安全策略不存在安全标号。 
4274J 数据库分区组已被此缓冲池使用。 
42802 插入或更新值的数目与列数不相同。 
42803 在 SELECT 或 HAVING 子句中的列引用无效,因为它不是分组列;或者在 GROUP BY 子句中的列引用无效。 
42804 CASE 表达式中的结果表达式不兼容。 
42805 ORDER BY 子句中的整数不标识结果表中的列。 
42806 不能将某值赋予某主机变量, 因为数据类型不兼容。 
42807 对该对象不允许执行 INSERT、UPDATE 或 DELETE。 
42808 插入或更新操作中标识的列不可更新。 
42809 标识的对象不是语句所应用的对象类型。 
42810 FOREIGN KEY 子句中没有标识基本表。 
42811 指定的列数与 SELECT 子句中的列数不相同。 
42813 WITH CHECK OPTION 不能用于指定的视图。 
42814 无法删除该列,因为它是表中唯一的列。 
42815 数据类型、长度、小数位、值或 CCSID 无效。 
42816 表达式中的日期时间值或持续时间无效。 
42817 由于某个视图或约束依赖于该列,并且指定了 RESTRICT,或者由于该列包含在分区键中,或者由于该列是安全标号列,所以无法删除该列。
42818 运算符或函数的操作数不兼容或者不可比较。 
42819 算术运算的操作数或需要数字的函数的操作数不是数字。 
42820 数字常数太长,或其值不在该数据类型取值范围内。 
42821 更新或插入值与列不兼容。 
42823 从仅允许一列的子查询中返回了多列。 
42824 LIKE 的操作数不是字符串,或第一个操作数不是列。 
42825 UNION、INTERSECT、EXCEPT 或 VALUES 的行没有兼容列。 
42826 UNION、INTERSECT、EXCEPT 或 VALUES 的行的列数不相同。 
42827 UPDATE 或 DELETE 中标识的表与游标指定的表不相同。 
42828 由 UPDATE 或 DELETE 语句的游标指定的表不能修改,或该游标是只读游标。 
42829 FOR UPDATE OF 无效,因为由该游标指定的结果表不能修改。 
42830 外键不符合父键的描述。 
42831 主键或唯一键列不允许空值。 
42832 不允许对系统对象执行该操作。 
42834 不能指定 SET NULL,因为不能对外键的任何列指定空值。 
42835 在指定的派生表之间不能指定循环引用。 
42836 指定的递归派生表的规范无效。 
42837 不能改变该列,原因是它的属性与当前的列属性不兼容。 
42838 检测到无效使用了表空间。 
42839 索引和长列不能处于与该表独立的表空间内。 
42840 检测到无效使用了 AS CAST 选项。 
42841 参数标记不能是用户定义的类型或引用类型。 
42842 列定义无效,因为指定的选项与列描述不一致。 
42845 检测到无效使用了 VARIANT 或 EXTERNAL ACTION 函数。 
42846 不支持从源类型到目标类型的强制类型转换。 
42849 外部例程不支持所指定的选项。 
42852 在 GRANT 或 REVOKE 中指定的特权无效或不一致。(例如,视图上的 GRANT ALTER。) 
42853 指定了选项的两个备用项,或者同一选项被指定了多次。 
42854 选择列表中的结果列数据类型与在带类型视图或具体化查询表定义中定义的类型不兼容。 
42855 不允许对此主机变量指定 LOB。此游标的 LOB 值的所有访存的目标主机变量必须是定位器或 LOB 变量。 
42858 不能将该操作应用于指定对象。 
42863 检测到 REXX 中有未定义的主机变量。 
42866 在 CREATE FUNCTION 语句的 CAST FROM 子句中的 RETURNS 子句的数据类型对于有源函数或函数体中的 RETURN 语句返回的数据类型不适合。 
42867 指定了冲突的选项。 
42872 FETCH 语句子句与游标定义不兼容。 
42875 要在 CREATE SCHEMA 中创建的对象的限定符必须与模式名相同。 
42877 不能限定该列名。 
42878 无效的函数或过程名称与 EXTERNAL 关键字一起使用。 
42879 在 CREATE FUNCTION 语句中一个或多个输入参数的数据类型对于源函数中相应的数据类型不适合。 
42880 CAST TO 和 CAST FROM 数据类型不兼容,或总会导致固定字符串截断。 
42881 使用基于行的函数无效。 
42882 特定实例名限定符与函数名限定符不相同。 
42883 找不到具有匹配特征符的例程。 
42884 找不到具有指定名称和兼容参数的任何例程。 
42885 在 CREATE FUNCTION 语句中指定的输入参数数目与 SOURCE 子句中指定的函数所提供的参数数目不匹配。 
42886 IN、OUT 或 INOUT 参数属性不匹配。 
42887 在该函数出现的上下文中该函数无效。 
42888 表没有主键。 
42889 该表已有主键。 
42890 在引用子句中指定了列表,但是标识的父表没有指定列名的唯一约束。 
42891 重复的 UNIQUE 约束已存在。 
42893 无法删除、改变或传输该对象或约束,或者无法从对象中撤销权限,因为还有其他对象依赖于该对象。 
42894 DEFAULT 值无效。 
42895 对于静态 SQL,不能使用输入主机变量,因为其数据类型与过程或用户定义的函数的参数不兼容。 
428A0 用户定义的函数所基于的有源函数出错。 
428A1 不能访问主机文件变量所引用的文件。 
428A2 表不能指定给多节点节点组,因为它没有分区键。 
428A3 为事件监视器指定了无效路径。 
428A4 为事件监视器选项指定了无效值。 
428A5 在 SET INTEGRITY 语句中指定的异常表结构不正确,或者已用生成的列、约束或触发器定义了该异常表。 
428A6 在 SET INTEGRITY 语句中指定的异常表不能与正在检查的表之一相同。 
428A7 检查的表数目与在 SET INTEGRITY 语句中指定的异常表数目不匹配。 
428A8 在父表或底层的表处于设置完整性暂挂状态时,不能对派生表使用 SET INTEGRITY 语句复位设置完整性暂挂状态。 
428A9 节点范围无效。 
428AA 列名不是事件监视器表的有效列。 
428B0 在 ROLLUP、CUBE 或 GROUPING SETS 中有非法嵌套。 
428B1 未指定给特定节点的表空间容器的规范数目不正确。 
428B2 容器的路径名无效。 
428B3 指定了无效的 SQLSTATE。 
428B7 在 SQL 语句中指定的编号不在有效范围内。 
428BO 不能为联合数据源创建方案。 
428C0 不能删除该节点,因为它是节点组中唯一的节点。 
428C1 只能为表指定一个 ROWID、IDENTITY 或安全标号列。 
428C2 检查函数体指出应已在 CREATE FUNCTION 语句中指定给出的子句。 
428C4 谓词运算符两边的元素的数目不相同。 
428C5 从数据源中找不到数据类型的数据类型映射。 
428C9 不能将 ROWID 列指定为 INSERT 或 UPDATE 的目标列。 
428CA 处于追加方式的表不能具有集群索引。 
428CB 表空间的页大小必须与相关联的缓冲池的页大小相匹配。 
428D1 不能访问 DATALINK 值所引用的文件。 
428D4 在 OPEN、CLOSE 或 FETCH 语句中不能引用在 FOR 语句中指定的游标。 
428D5 结束标号与开始标号不匹配。 
428D6 NOT ATOMIC 语句不允许 UNDO。 
428D7 不允许条件值。 
428D8 SQLSTATE 或 SQLCODE 变量的声明或使用无效。 
428DB 作为超类型、超表或超视图,该对象无效。  
428DC 对于此类型的变换,该函数或方法无效。 
428DD 未定义要求的变换。 
428DE PAGESIZE 值不受支持。 
428DF 在 CREATE CAST 中指定的数据类型无效。 
428DG 在 CREATE CAST 中指定的函数无效。 
428DH 操作对于类型表无效。 
428DJ 不能更改或删除继承列或属性。 
428DK 已定义引用列的作用域。 
428DL 外部函数或有源函数的参数已定义了作用域。 
428DM 作用域表或视图对于引用类 
型无效。 
428DN 未在外部函数的 RETURNS 子句中指定 SCOPE,或在有源函数的 RETURN 子句中指定了 SCOPE。 
428DP 该类型不是结构化类型。 
428DQ 子表或子视图的模式名不能与其上一级表或上一级视图的模式名不同。 
428DR 无法将操作应用于子表或子视图。 
428DS 不能在子表中定义指定列的索引。  
428DT 表达式的操作数不是有效的作用域引用类型。 
428DU 要求的类型层次结构中不包括的一种类型。  
428DV 解析引用运算符的左操作数无效。 
428DW 不能使用解析引用运算符来引用对象标识列。 
428DX 对象标识列是定义一个类型表或带类型视图层次结构的根表或根视图所必需的。 
428DY 不能对目标对象类型更新统计信息。 
428DZ 不能更新对象标识列。 
428E0 索引的定义与索引扩展名的定义不匹配。 
428E1 用于产生范围的表函数的结果与索引扩展名的键变换表函数的结果不一致。 
428E2 目标键参数的数目或类型与索引扩展名的键变换函数的数目或类型不匹配。 
428E3 索引扩展名中函数的参数无效。 
428E4 函数在 CREATE INDEX EXTENSION 语句中不受支持。 
428E5 只能用用户定义的谓词来指定 SELECTIVITY 子句。 
428E6 用户定义的谓词中的方法的搜索参数与索引扩展名的相应搜索方法的搜索参数不匹配。 
428E7 用户定义的谓词中跟在比较运算符后的操作数类型与 RETURNS 数据类型不匹配。 
428E8 搜索目标或搜索参数参数与正在创建的该函数的参数名不匹配。 
428E9 在相同的使用规则中参数的参数名不能同时作为搜索目标和搜索参数。 
428EA 带类型视图中的全查询无效。 
428EB 当上一级视图中的某一列为可更新时,子视图中相应的列不能是只读的。 
428EC 为具体化查询表指定的全查询无效。 
428ED 不能构造具有 Datalink 或 Reference 类型属性的结构化类型。 
428EE 选项对此数据源无效。 
428EF 该选项的值对此数据源无效。 
428EG 丢失此数据源所必需的选项。 
428EH 不能 ADD 已定义的选项。 
428EJ 不能 SET 或 DROP 尚未添加的选项。 
428EK 已声明的全局临时表名的限定符必须是 SESSION。 
428EL 变换函数不能与函数或方法一起使用。 
428EM TRANSFORM GROUP 子句是必需的。 
428EN 变换组被指定为未使用。 
428EP 结构化类型不能直接或间接依赖于它本身。 
428EQ 例程的返回类型与主题类型不同。 
428ER 在删除方法主体之前,不能删除方法规范。 
428ES 方法主体与方法规范的语言类型不对应。 
428EU 在服务器定义中未指定 TYPE 或 VERSION。 
428EV 对于该数据源类型,传递(Pass-Through)功能不受支持。 
428EW 表不能与具体化查询表互相转换。 
428EX 例程不能用作变换函数,因为它是内置函数或方法。 
428EY 用户定义的谓词中搜索目标的数据类型与指定索引扩展名的源键的数据类型不匹配。 
428EZ OLAP 函数的窗口规范无效。 
428F0 ROW 函数必须包括至少两列。 
428F1 SQL TABLE 函数必须返回表结果。 
428F2 SQL 过程中的 RETURN 语句值的数据类型必须是 INTEGER。 
428F3 SCROLL 与 WITH RETURN 是互斥的。 
428F4 在 FETCH 上指定的 SENSITIVITY 不允许用于游标。 
428F6 游标是可滚动的,但结果表涉及来自表函数的输出。 
428F7 尝试对外部例程进行的操作仅应用于 SQL 例程。 
428F9 在此上下文中不能指定序列表达式。 
428FA 十进制数的小数位必须为零。 
428FB 序列名不能是由系统为标识列生成的序列。 
428FC 加密密码的长度无效。 
428FD 用于解密的密码与加密数据时所使用的密码不匹配。 
428FE 数据不是 ENCRYPT 函数的结果。 
428FF 缓冲池规范无效。 
428FG 登台表或具体化查询表定义无效。 
428FH SET INTEGRITY 选项无效 
428FI 指定了 ORDER OF,但表标志符不包含 ORDER BY 子句。 
428FJ 视图或具体化查询表的外部全查询不允许使用 ORDER BY。 
428FL 在指定 SQL 数据更改语句的上下文中,不允许 SQL 数据更改语句。 
428FM SELECT 中的 INSERT 语句指定了一个不是对称视图的视图。 
428FP 只允许将一个 INSTEAD OF 触发器用于对主题视图的每种操作。 
428FQ INSTEAD OF 触发器不能指定使用 WITH CHECK OPTION 定义的视图、在使用 WITH CHECK OPTION 定义的另一个视图上定义的视图或者嵌套在使用 WITH ROW MOVEMENT 子句定义的视图中的视图。 
428FT 表与指定的数据分区操作不兼容。 
428FU 从 FROM SQL 变换函数或方法返回的内置类型与 TO SQL 变换函数或方法的相应内置类型不匹配。 
428FV 不能将方法定义为覆盖方法。 
428FZ 仅为某些操作定义了 INSTEAD OF 触发器的视图不能在 MERGE 语句中用作目标。 
428G1 数据分区数超过了表的表空间数。 
428G2 无法从表中删除最后一个数据分区。 
428G3 当全查询中的 SQL 数据更改语句的目标视图定义了 INSTEAD OF 触发器时,FINAL TABLE 无效。 
428G4 无效使用了 INPUT SEQUENCE 排序。 
428G5 UPDATE 语句的赋值子句必须至少指定不是 INCLUDE 列的一列。 
428G6 指定了不能从全查询的 FROM 子句中的数据更改语句的目标中选择的一列。 
428G8 不能启用视图以进行查询优化。 
428GA 不能添加、删除或改变联合选项。 
428GD PARTITION BY 子句必须指定单个列,并且它必须与 ORGANIZE BY 子句的第一列相同。 
428GE 源表无法连接至分区目标表。 
428GG 无效使用了容许错误的嵌套表表达式。 
428GO 列选项在透明 DDL 语句中无效。 
428GI XML 模式不完整,因为缺少 XML 模式文档。 
428GP 无法为类型为 ARRAY 的组件指定多个元素。 
428GR 已经将具有相同访问类型(READ 或 WRITE)的安全标号授予给授权标识。 
428GQ 安全标号的 GRANT 与组件的现有已授权的安全标号相冲突。 
428GS 对该过程指定的选项值与源过程的对应选项不匹配。 
428GT 表未受安全策略保护。 
42901 列函数不包括列名。 
42903 WHERE 子句或 SET 子句包括无效引用,例如列函数。 
42904 由于编译错误,未创建 SQL 过程。 
42907 字符串太长。 
42908 语句不包括必需的列表。 
42910 复合语句中不允许该语句。 
42911 十进制除法运算无效,因为其结果的小数位为负。 
42912 列不能更新,因为它未在游标的 select 语句的 UPDATE 子句中标识。 
42914 DELETE 无效,因为子查询中引用的表可能会受该操作影响。 
42915 检测到无效引用约束。 
42916 不能创建别名,因为它会导致重复的别名链。 
42917 不能显式删除或改变该对象。 
42918 用户定义的数据类型不能用系统定义数据类型名(例如 INTEGER)创建。 
42919 不允许嵌套复合语句。 
42921 容器不能添加至该表空间。 
42925 指定的递归派生表不能指定 SELECT DISTINCT,而必须指定 UNION ALL。 
42928 不能为该表指定 WITH EMPTY TABLE。 
42932 程序预编译假设不正确。 
42939 不能使用该名称,因为指定的标识是保留给系统使用的。 
42961 指定的服务器名与当前服务器不匹配。 
42962 长列、LOB 列、XML 列或结构化类型列不能用于索引、键或约束。 
42963 指定的安全标号列无效。 
42968 连接失败,因为没有当前软件许可证。 
42969 未创建程序包。 
42972 MERGE 语句的连接条件或 ON 子句中的表达式引用多个操作数表中的列。 
42985 例程中不允许该语句。 
42987 不允许此语句出现在过程或触发器中。 
42989 使用表达式生成的列或者安全标号列不能在前触发器中使用。 
42990 不允许唯一索引或唯一约束,因为键列不是分区键列的超集。 
42991 BOOLEAN、BINARY 和 VARBINARY 数据类型当前仅在内部受支持。 
42993 定义的列太大而不能记录。 
42994 不支持原始设备容器。 
42995 所请求的函数不应用于全局临时表。 
42997 此版本的 DB2 应用程序请求器、DB2 应用程序服务器或两者的组合不支持该功能。 
429A1 节点组对于表空间无效。 
429A9 SQL 语句不能由 DataJoiner 处理。 
429B2 为结构化类型或列指定的直接插入长度值太小。 
429B3 可能未在子表中定义对象。 
429B4 数据过滤函数不能是 LANGUAGE SQL 函数。 
429B5 索引扩展名中实例参数的数据类型无效。 
429B8 用 PARAMETER STYLE JAVA 定义的例程不能具有作为参数类型或返回类型的结构化类型。 
429B9 在属性赋值中不能使用 DEFAULT 或 NULL。 
429BA FEDERATED 关键字必须与对联合数据库对象的引用配合使用。 
429BB 在 SQL 例程中不支持对参数或变量指定的数据类型。 
429BC 在 ALTER TABLESPACE 语句中有多个容器操作。 
429BE 主键或唯一键是维子句中的列的子集。 
429BG 范围集群表不支持该函数。 
429BH 分区表定义包含不受支持的列定义,该列可能是标识列、DATALINK 列或 XML 列。 
429BJ 在视图中无效使用了 WITH ROW MOVEMENT。 
429BK 由于移动行涉及到基础视图,因此,尝试更新视图无效。 
429BL 在非法上下文中调用了将修改 SQL 数据的函数。 
429BO 不能为联合数据源创建方案。 
429BP 昵称列表达式无效。 
429BS 涉及到 XMLPATTERN 子句或使用数据类型 XML 定义的列的索引定义无效。 
429BT 由于存在依赖性而使得转移所有权失败。 
429BU 无法访问插件的用户映射存储库中的用户映射。 
429BZ 由于其中一个底层表受保护,所以对 UNION ALL 视图执行的更新、删除或插入操作失败。 
429C0 查询必须包含使用了所指示的列的谓词。 
 
 
posted @ 2015-04-15 14:06  IT Daren  阅读(1779)  评论(0编辑  收藏  举报