2014-05-14 141 views
9

在SAP HANA存儲過程中,如何返回受插入或更新語句影響的行數?如何返回HANA存儲過程中受影響的行數?

在oracle中,一個人會使用sql%rowcount,但我在他們的文檔中找不到HANA的等價物?

例如:

CREATE PROCEDURE procedure_name (p_input) 
LANGUAGE SQLSCRIPT AS 
BEGIN 
    define c integer; 
    insert into some_table values (somevalues); 
    c := sql%rowcount; 
END 

UPDATE:

我發現了一個SAP線程最後的答案。您可以運行插入或更新後,這一說法得到行數:

SELECT ::ROWCOUNT into L_C FROM DUMMY; 

回答

7

不是試圖竊取上網點,但這應該有一個答案,這不是隻是問題的描述。要選擇行數,使用以下命令:

SELECT ::ROWCOUNT INTO someVariable FROM DUMMY; 

DUMMY是HANA一個特殊的關鍵字,並用於選擇變量VS從表中選擇。你不能簡單地在HANA中使用SELECT ::ROWCOUNT INTO someVariable

+1

'DUMMY'不是關鍵字,而是預先提供的輔助表。它用來產生一個單元組,幾乎是一樣的,Oracle使用'DUAL'表。使用當前版本(HANA 1> = SP12和HANA 2),通過簡單的賦值常常可以避免在SQLScript中使用DUMMY, '我= :: ROWCOUNT'; –

相關問題