2016-08-03 4 views
0

私は単純なテーブルを持っています(JSON厳密ではありません)。私は従業員のIDをパラメータとして取る簡単な関数を書いて、そのIDと一致するテーブルからすべての列を返したいと思います。私の機能:oracle plsqlはすべての列(単一行)を選択してjsonとして返します

CREATE OR REPLACE PACKAGE BODY PKG_TEST AS 

FUNCTION SEARCH_JOINING_INFO(EMP_ID VARCHAR2) RETURN CLOB IS 
    RET TBL_EMP_BASIC_PROFILE%ROWTYPE; 
BEGIN 
    SELECT * INTO RET FROM TBL_EMP_BASIC_PROFILE WHERE TBL_EMP_BASIC_PROFILE.EMP_ID=EMP_ID; 
    --RETURN RET.GETCLOBVAL(); 
END; 

END PKG_TEST; 

これは明らかに全く機能しません。私は単一の行(すべての列)を選択してjson形式の文字列として返したいと思います。たとえば、これは'{"EMP_ID" : "1234", "EMP_NAME" : "ABC"}'です。しかし、私はどのように知りません。また、「SELECT *」という形式を使用したい場合もあります。これは、新しい列を追加する必要があることがあるためです。どうしたらいいですか?利用可能な方法はありますか? 私のテーブルの説明:

Name     Null  Type   
-------------------- -------- ------------- 
EMP_ID    NOT NULL VARCHAR2(13) 
EMP_NAME      VARCHAR2(50) 
EMP_NAME_BANG     VARCHAR2(150) 
EMP_GENDER     NUMBER(1)  
EMP_CATEGORY     NUMBER(1)  
EMP_OFFICE     NUMBER(7)  
EMP_DESIGNATION    NUMBER(4)  
EMP_DATE_OF_JOINING   DATE   
EMP_GRADE      NUMBER(2)  
EMP_SLAB      NUMBER(2)  
EMP_BASIC      NUMBER(7)  
EMP_PHOTO_UPLOAD    VARCHAR2(500) 
CREATED_ON     DATE   
CREATED_BY     VARCHAR2(10) 
EMP_BIRTH_DATE    DATE   
EMP_EMAIL      VARCHAR2(50) 
EMP_PHONE      VARCHAR2(15) 
EMP_ACCOUNT_NO    VARCHAR2(50) 
EMP_BANK_NAME     VARCHAR2(50) 
EMP_APPOINTMENT_TYPE   NUMBER(1) 

答えて

0

オラクルが提供する何の機能はありません、あなたがブログを通過することができ、ORA-00001

それは間違いなくあなたを助けるでしょう。

関連する問題