簡體   English   中英

oracle插入語句錯誤

[英]Error in oracle insert statement

我是SQL新手。 我編寫了將數據保存在db中的過程。 從SQL,我試圖調用此過程來保存數據。 但是出現SQL錯誤> ORA-00900: invalid SQL statement 誰能幫我解決這個錯誤? 這是我的嘗試:

我的程序>>>

PROCEDURE NEW_USER
(
    IN_CREATED_BY               IN VARCHAR2,
    IN_MODIFIED_BY                         IN VARCHAR2,
    IN_USERNAME                            IN VARCHAR2
)
AS
    L_USER_ID INTEGER;
    N_USER_ID  INTEGER := hibernate_sequence.NEXTVAL;
BEGIN
    SELECT case 
         when exists( SELECT USER_ID FROM T_MT_USER WHERE USERNAME = IN_USERNAME )
         then 
              (SELECT USER_ID FROM T_MT_USER WHERE USERNAME = IN_USERNAME)
         else 0
       end  into L_USER_ID
      FROM dual;

    IF (L_USER_ID = 0) THEN
    INSERT INTO T_MT_USER
    (USER_ID, ACCOUNT_EXPIRED_FLG, ACCOUNT_LOCKED_FLG, created_by, CREATED_TS, ACTIVE_FLG, end_effective_dt, modified_by, MODIFIED_TS, "password", password_expired, start_effective_dt, username) 
    VALUES
    (N_USER_ID, 0, 0, IN_CREATED_BY, SYSTIMESTAMP, 1, NULL, IN_MODIFIED_BY, SYSTIMESTAMP, '$2a$10$3hoAeeVJ0AG.CQS2xX8rT.wUlt1rjoiYsHW0YflZEiQ5QYzG4HpYi', 0, SYSTIMESTAMP, IN_USERNAME);
     END IF;
EXCEPTION
    WHEN OTHERS THEN
        log_api.fatal(log_ctx,'Exception in NEW_USER');
        RAISE;
END NEW_USER;

而我在sql中的調用>>

USER_DEMO.NEW_USER('sbappi','sbappi','sumon5');

正如上面注釋中a_horse_with_no_name所建議的那樣,以下代碼對我來說正常工作>>>

execute USER_DEMO.NEW_USER('sbappi','sbappi','sumon5');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM