quest central for db2 无法查看表结构
有三个数据库 其中两个可以看 另外一不能看 一看就报错 “[IBM][CLI Driver][DB2/AIX64] SQL0206N "P.DL_FEATURES"在使用它的上下文中无效。SQLSTATE=42703”
答案:查查看,这个库的连接用户是否dba, 是否已经授了系统表的查询权限
相关错误信息如下:
SQL0206N "<名称>" 在使用它的上下文中无效。
说明:
此错误在下列情况中可能发生:
* 对于 INSERT 或 UPDATEF 语句,指定的列不是表的列或指定作为插入或更新
对象的视图的列。
* 对于 SELECT 或 DELETE 语句,指定的列不是语句中 FROM 子句所标识的任何
表或视图的列。
* 对于赋值语句,引用名称未解析为列或变量的名称。
* 对于 ORDER BY 子句,指定的列是子查询中的相关列引用,而这是不允许的。
* 对于 CREATE TRIGGER、CREATE METHOD、CREATE FUNCTION 或 CREATE
PROCEDURE 语句:
* 引用 "<名称>" 未解析为列名、局部变量名或转换变量名。
* 尚未声明在 SIGNAL 语句中指定的条件名 "<名称>"。
* 对于 CREATE TRIGGER 语句:
* 引用主题表列而未使用 OLD 或 NEW 相关名。
* 触发的操作中 SET 转换变量语句的赋值符号左边指定旧转换变量,而此处
仅支持新转换变量。
* 对于带有 PREDICATES 子句的 CREATE FUNCTION 语句:
* SQL 函数的 RETURN 语句引用不是参数的变量或者 RETURN 语句范围内的
其他变量。
* FILTER USING 子句引用不是参数名或 WHEN 子句中的表达式名的变量。
* 在索引使用规则中的搜索目标与正在创建的函数的某些参数名不匹配。
* 在索引使用规则中的搜索自变量与 EXPRESSION AS 子句中的表达式名或者
正在创建的函数的参数名不匹配。
* 对于 CREATE INDEX EXTENSION 语句,RANGE THROUGH 子句或 FILTER USING
子句引用不是在该子句中可以使用的参数名的变量。
不能处理该语句。
用户响应:
验证是否在 SQL 语句中正确指定了名称。对于 SELECT 语句,确保在 FROM 子句
中命名了所有必需的表。对于 ORDER BY 子句中的子查询,确保无相关列引用。
如果对表使用相关名,那么验证后续引用使用的是相关名,而不是表名。
对于 CREATE TRIGGER 语句,确保在 SET 转换变量语句赋值符号左边仅指定了新
的转换变量,并且对主题表列的任何引用都有指定的相关名称。
对于使用 db2-fn:sqlquery 函数嵌入在 XQuery 中的全查询,该全查询中的引用
必须是下列其中一项:该全查询上下文中的列、全局变量或使用 db2-fn:sqlquery
函数的其他自变量传递给新的 SQL 上下文的参数。
sqlcode: -206
sqlstate: 42703
上一个:Oracle,DB2,Sybase等数据库一年的授权费大概多少钱呢?
下一个:db2里的adcl是什么东西?