Database 如何在SAP HANA数据库中获取最后插入的记录标识符?

Database 如何在SAP HANA数据库中获取最后插入的记录标识符?,database,sap,hana,Database,Sap,Hana,这是我的存储过程,我正在尝试获取最后插入的部门ID。没有MAX(部门ID) 在插入查询之后,只需使用以下命令: 从DUMMY中选择当前_identity_value() 它将返回最新插入的值您的过程似乎正在对现有记录执行更新,对不存在的记录执行插入。有两个SAP HANA SQL命令可以在不需要过程的情况下执行此操作:MERGE和UPSERT。插入多个记录时如何完成此操作?MSSQL有输出。萨普哈纳有吗? CREATE PROCEDURE "BPPRA_CUSTOM_APP"."AddUpdat

这是我的存储过程,我正在尝试获取最后插入的
部门ID
。没有
MAX(部门ID)


在插入查询之后,只需使用以下命令:

从DUMMY中选择当前_identity_value()


它将返回最新插入的值

您的过程似乎正在对现有记录执行
更新
,对不存在的记录执行
插入
。有两个SAP HANA SQL命令可以在不需要过程的情况下执行此操作:
MERGE
UPSERT
。插入多个记录时如何完成此操作?MSSQL有输出。萨普哈纳有吗?
CREATE PROCEDURE "BPPRA_CUSTOM_APP"."AddUpdateMaster_Department"(IN DepartmentId BIGINT,Department nvarchar(100),Description nvarchar(100),UserId int)
    LANGUAGE SQLSCRIPT
    --READS SQL DATA 
AS
BEGIN
    if DepartmentId>0
    then
        update "BPPRA_CUSTOM_APP"."Master_Department" set "Department"=Department,"Description"=Description ,"ModifiedUserId"=UserId,"ModifiedDate"=CURRENT_TIMESTAMP 
        where "DepartmentId"= :DepartmentId;
        select  DepartmentId  FROM DUMMY;
    ELSE    

    insert into "BPPRA_CUSTOM_APP"."Master_Department" ("Department","Description","CreatedUserId","CreatedDate") 
                                                 values(Department,Description,UserId,CURRENT_TIMESTAMP);   

    END IF;
END;