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

UDT関数の作成時のPLS-00539およびPLS-00538エラー

    宣言中に行った間違いはほとんどありません。インラインの説明を参照してください:

    CREATE OR REPLACE TYPE VC_MNumber AS OBJECT
    (
       idno NUMBER,
       MEMBER FUNCTION dimension
          RETURN NUMBER,
       MEMBER FUNCTION typeName
          RETURN VARCHAR2
    )
       NOT INSTANTIABLE NOT FINAL;
    /
    
    --DROP TYPE VC_MINTEGER;
    
    CREATE OR REPLACE  TYPE VC_MInteger
       UNDER VC_MNumber
       (
          OVERRIDING MEMBER FUNCTION dimension
             RETURN NUMBER,
          OVERRIDING MEMBER FUNCTION typeName
             RETURN VARCHAR2
       );
    /
    
    CREATE OR REPLACE  TYPE VC_MReal
       UNDER VC_MNumber
       (
          YDCCoeff NUMBER,
          CbDCCoeff NUMBER,
          CrDCCoeff NUMBER,
          OVERRIDING MEMBER FUNCTION Dimension --<--Overriding function should have same name
             RETURN NUMBER,
          OVERRIDING MEMBER FUNCTION typeName
             RETURN VARCHAR2
       )
        FINAL;
    /
    
    CREATE OR REPLACE TYPE BODY VC_MReal
    AS
       OVERRIDING MEMBER FUNCTION Dimension
          RETURN NUMBER
       IS
          var_dimension   NUMBER := 10;
       BEGIN
          RETURN var_dimension;
       END;
    
       OVERRIDING MEMBER FUNCTION typeName  --<-- You declared in Object type as `overriding` function and using it as `Member function` alone.
          RETURN VARCHAR2
       IS
          var_typeName   VARCHAR2 (400) := 'VC_MREAL';
       BEGIN
          RETURN var_typeName;
       END;
    END;
    /
    



    1. jQueryでラジオボタンがチェックまたは選択されているかどうかを確認するにはどうすればよいですか?

    2. MySQL InnoDB auto_incrementの値が1ではなく2増加します。ウイルス?

    3. データ ストレージではローカル パスのみがサポートされているため、filestream を使用して大量のデータを管理するにはどうすればよいですか?

    4. テーブルのストレージエンジンは修復をサポートしていません。 InnoDBまたはMyISAM?