2016-11-07 55 views
0

我將PL/SQL存儲過程轉換爲HSQLDB過程。我試圖在我的過程中聲明引用我創建的變量。當我使用這種類型的過程參數時,它工作正常。但是當我嘗試將它用作局部變量類型時,它不知道如何使用它。HSQL DB使用創建的類型聲明變量

例子:

CREATE TYPE MY_DECLARED_TYPE AS INTEGER; 

CREATE PROCEDURE TEST (IN TEMP MY_DECLARED_TYPE) MODIFIES SQL DATA DYNAMIC RESULT SET 1 
    BEGIN ATOMIC 
     DECLARE l_var_1 MY_DECLARED_TYPE; 
    BEGIN ATOMIC 
     --Do some stuff-- 
END; 

是否有HSQLDB一些條款,不允許在聲明語句使用聲明的類型?還是有什麼我失蹤?

回答

1

這適用於最新的HSQLDB版本(2.3.4)。

CREATE PROCEDURE TEST (IN TEMP MY_DECLARED_TYPE) MODIFIES SQL DATA DYNAMIC RESULT SETS 1 
    BEGIN ATOMIC 
     DECLARE IVAR MY_DECLARED_TYPE; 
    BEGIN ATOMIC 
     SET IVAR = 0; 
    END; 
END; 
+0

我無法升級到該版本,但我會接受答案:)。謝謝 – SenSok