SQL文: .................
row_number() over(order by USER_ID, rowid) rn,
........................ USER_ID, rowid是表中字段,上记SQL文在PL/SQL中可以正常执行,但是在UNIX系统下通过PORC编译的时候会报错(PORC是在UNIX下通过gcc和oracle支持的编译文件实现编译执行)。错误信息提示,在“over(order by USER_ID, rowid)”出现错误,我想是不是再PORC编译中不支持这种写法,把“over(order by USER_ID, rowid)”当作row_number()的别名了,所以出错,也有可能是需要特定的写法吧,请知道的各位高手多多指教
row_number() over(order by USER_ID, rowid) rn,
........................ USER_ID, rowid是表中字段,上记SQL文在PL/SQL中可以正常执行,但是在UNIX系统下通过PORC编译的时候会报错(PORC是在UNIX下通过gcc和oracle支持的编译文件实现编译执行)。错误信息提示,在“over(order by USER_ID, rowid)”出现错误,我想是不是再PORC编译中不支持这种写法,把“over(order by USER_ID, rowid)”当作row_number()的别名了,所以出错,也有可能是需要特定的写法吧,请知道的各位高手多多指教
唉,也不给个出错信息。
把rowid加上单引号试一试
row_number() over(order by USER_ID, 'rowid') rn,
错误信息代号:
pcc-s-00201: "over(" 中发现了"(",在下面输入中出错
是否可以通过设置$oh/precomp/admin/pcscfg.cfg文件下的参数来让编译通过呢?
我像下面设置了下,报错说COMMON_PARSER选项无法找到
COMMON_PARSER=NO
MODE=ORACLE
DYNAMIC=ORACLE
TYPE_CODE=ORACLE
http://www.itpub.net/thread-1105627-1-1.html