【发布时间】:2009-06-08 11:06:48
【问题描述】:
我试图强制 gnu - cpp 保留特殊的 cmets,例如 /*+ ... /,因为我需要它们作为优化器提示。它与 xlc (AIX) 的 cpp 配合得很好,但现在我在斜杠和加号 (/) 之间增加了一个空格?
例如:
$ cat cpp-test.sql
#define _STAR *
#define OPT_HINT(x) /_STAR+ x _STAR/
select OPT_HINT(INDEX(TABLE table_pk)) * from table
$ /usr/bin/cpp -E < cpp-test.sql
# 1 "<stdin>"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "<stdin>"
select / *+ INDEX(TABLE table_pk) */ * from table
$
我希望得到“select /*+ INDEX(TABLE table_pk) */ * from table”。
有什么建议吗?
最好的问候
德克
【问题讨论】: