为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:03134284604-20260707-335949-20228
【操作系统】:Kylin V10
【CPU】:x86
【问题描述】*:使用DTS工具,SQL server迁移函数到达梦报错:
-2007: 第 11 行, 第 8 列[RETURNS]附近出现错误
CREATE FUNCTION "TEST"."fn_W_Info"
(
DM_wo VARCHAR (22),
DM_d0015 VARCHAR (37)
)
RETURNS TABLE
AS
RETURN
(
SELECT
a.WORK_ORDER_NUMBER AS work_order_number,
d.CP_REV AS cp_rev,
b.MANU_PART_NUMBER AS MANU_PART_NUMBER,
a.D0015 AS d0015
FROM "TEST".data0006 a
LEFT JOIN "TEST".data0025 b ON a.BOM_PTR = b.RKEY
LEFT JOIN "TEST".data0050 d ON b.ANCESTOR_PTR = d.RKEY
WHERE a.WORK_ORDER_NUMBER = DM_wo
AND (DM_d0015 = '' OR a.D0015 = DM_d0015)
);

不支持RETURNS TABLE的内联表值函数语法,需要改用管道表函数来实现相同的功能
可以参考一下
参考.txt