sql >> データベース >  >> RDS >> Oracle

Oracleエラー:ORA-00900:無効なSQL文

    FLOAT(2)を置き換えます FLOATだけで :

    CREATE OR REPLACE TYPE EmployeeType AS OBJECT (
        EmployeeNumber NUMBER,
        EmployeeName VARCHAR2(150),
        EmployeeAddress VARCHAR2(255),
        MAP MEMBER FUNCTION getEmployeeNumber RETURN NUMBER,
        MEMBER FUNCTION CalculateSalary RETURN FLOAT
    )
    NOT FINAL;
    /
    CREATE OR REPLACE TYPE BODY EmployeeType AS
    
        MAP MEMBER FUNCTION getEmployeeNumber RETURN NUMBER IS
        BEGIN
            RETURN EmployeeNumber;
        END;
         -- function that can be overriden by subtypes, make abstract
        MEMBER FUNCTION CalculateSalary RETURN FLOAT IS
        BEGIN
             -- function returns empty, has to be overwritten by fulltimeemployee
            RETURN 0.00;
        END;
    END; 
    /
    

    CREATE TYPEのドキュメント これについては触れていませんが、CREATE FUNCTIONに関連するトピックで説明を見つけることができます。 : http://docs.oracle.com/cd/ B28359_01 / appdev.111 / b28370 / create_function.htm RETURNデータ型




    1. mysqlの場合のサブクエリwhen句

    2. SSMA for Oracle ConnecttoOracleエラー

    3. 例を使用したOracleの一意キー

    4. Mysql CREATE DEFINER