在带有“。”点的DB2文件上运行SQL查询。在名字里?

时间:2012-06-25 19:37:55

标签: db2 ibm-midrange

我有一个名为“my.test”的DB2文件。 DB2文件名包含一个点'.'

如果我尝试通过strsql运行以下查询:

select * from my.test

我收到以下错误:

Token . was not valid. Valid tokens: FOR USE SKIP WAIT WITH FETCH ORDER UNION EXCEPT OPTIMIZE.

有解决方法吗?我尝试用引号括起来,但这没有帮助。

1 个答案:

答案 0 :(得分:5)

双引号是转义文件名的正确方法。 文件名在引号内变为区分大小写,必须以大写字母指定。

SELECT * FROM "MY.TEST"

请注意,在IFS命名约定中,“。” operator用于引用文件中的成员,但它不适用于SQL。

如果您需要使用名为“TEST”的成员访问名为“MY”的文件,则需要创建一个别名来进行查询。

CREATE ALIAS QTEMP/MYTEST FOR MY (TEST)
SELECT * FROM QTEMP/MYTEST