有人可以礼貌地解释这种疯狂吗?
INSERT INTO "dbo"."UserProfile" ("FirstName")
VALUES('John')
RETURNING "UserProfileId" INTO _UserProfileId;
抛出一个模糊的引用错误,但这正确执行:
INSERT INTO "dbo"."UserProfile" ("FirstName")
VALUES('John')
RETURNING "dbo"."UserProfile"."UserProfileId" INTO _UserProfileId;
_UserProfileId
是声明的整数变量。我在手册中找不到任何对这种语法的引用,或者为什么它在任何方面都是模棱两可的。
答案 0 :(得分:3)
IN
和OUT
参数(包括RETURNS TABLE
中的列)在plpgsql函数体内的每个SQL命令中都可见。
如果查询中有相同名称的列,则必须对其进行表格限定以使其明确无误。在您的情况下,表名称将执行:
... RETURNING "UserProfile"."UserProfileId" INTO _UserProfileId;
相关: