【发布时间】:2017-01-28 18:10:23
【问题描述】:
请给我一个表名SAPPRD./CS1/TB2_SOPBV,但我不能进行这个查询:
transfer ownership of table SAPPRD./CS1/TB2_SOPBV TO USER SAPQAS preserve privileges;
我收到错误:
DB21034E 该命令被作为 SQL 语句处理,因为它是 不是有效的命令行处理器命令。在 SQL 处理期间 返回:SQL0104N 在以下发现意外的标记“/CS1/” “表 SAPFIP 的臀部。”。预期的标记可能包括:“”。 SQLSTATE=42601
所以我尝试转义,我将查询编辑为:
transfer ownership of table SAPPRD.\"/CS1/TB2_SOPBV" TO USER SAPQAS preserve privileges
但它不会逃脱,我仍然收到错误:
DB21034E 该命令被作为 SQL 语句处理,因为它是 不是有效的命令行处理器命令。在 SQL 处理期间 返回:SQL0007N 语句未处理,因为字符 SQL 语句中不支持的已包含在 SQL 中 陈述。无效字符: ”\”。无效之前的文本 字符:“表 SAPPRD 的臀部。”。 SQLSTATE=42601
是否可以在此处转义并继续此查询?
谢谢!
【问题讨论】:
-
顺便说一下,表的命名策略非常糟糕。
-
@AngocA 是的,但这是我必须尊重的 SAP 命名策略
标签: db2