ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • SQL: Bind Variable
    Data Engineering 2023. 12. 8. 15:41

    Create Table 

    CREATE TABLE ch13_physicist(

        ids       NUMBER,

        names    VARCHAR2(20),

        birth_dt    DATE);

     

    Declare

        vn_emp_id    employees.employee_id%type;

        vn_emp_name employees.emp_name%TYPE;

        vn_job_id      employees.job_id%TYPE;

        vs_job    employees.job_id%TYPE := 'SA_REP'

        vn_sal    employees.salary%TYPE := 7000;

        vn_manager    employees.manager%TYPE := 148;

        vs_sql    VARCHAR2(1000);

     

    Select Using Bind Variables

    BEGIN

        vs_sql := 'INSERT INTO ch13_physicist VALUES (:a, :a, :a)';

        EXECUTE IMMEDIATE vs_sql USING vn_ids, vs_name, vd_dt

    END;

     

    Insert Using Bind Variables

        vs_sql := 'SELECT    employee_id. emp_name, job_id

                        FROM        employees

                        WHERE     job_id := a

                        AND           salsary <= :b

                        AND           manager_id = :c';

     

    BEGIN

        vs_sql := '

        EXECUTE IMMEDIATE vs_sql INTO vn_emp_id, vs_emp_name, vs_job_id USING vs_job, vn_sal, vn_manager;

        EXECUTE IMMEDIATE vs_sql INTO vn_emp_id, vs_emp_name, vs_job_id USING vs.job, vn_sal, vn_manager;

        COMMIT;

    END;

     

     

     

    Delete Using Bind Variable

     

    DECLARE

        vn_ids    ch13_physicist.ids%TYPE := 10;

        vs_name    ch13_physicist.name%TYPE := 'Max';

        vd_dt    ch13_physicist.birth_dt%TYPE := TO_DATE('18580423','YYYYMMDD');

        

        vs_sql    VARCHAR2(1000);

        vn_cnt    NUMBER := 0;

     

    BEGIN

        vs_sql := 'UPDATE ch13_physicist SET names = :a, birth_dt = :a WHERE ids = :a';

        EXECUTE IMMEDIATE vs_sql INTO vn_emp_id, vs_emp_name, vs_job_id USING vs_job, vn_sal, vn_manager;

    END;

     

    DECLARE

        vn_ids    ch13_physicist.ids%TYPE := 10;

        vs_name    ch13_physicist.names%TYPE := 'Albert';

        vd_dt    ch13_physicist.birth_dt%TYPE := TO_DATE('1879-03-14','YYYY-MM-DD');

     

    BEGIN

        vs_sql := 'UPDATE ch13_physicist SET names = :a, birth_dt = :a WHERE ids = :a';

        EXECUTE IMMEDIATE vs_sql INTO vn_emp_id, vs_emp_name, vs_job_id USING vs_job, vn_sal, vn_manager;

    END;

     

    Delete Using Bind Variables

     

    DECLARE

        vn_ids    ch13_physicist.ids%TYPE := 10;

     

    vs_sql := 'DELETE ch13_physicist WHERE ids=:a';

    EXECUTE IMMEDIATE vs_sql USING vn_ids;

    'Data Engineering' 카테고리의 다른 글

    BoA(Bank of America) 모바일서비스 '에리카'  (0) 2024.06.10
    Oracle Statistics  (0) 2023.11.14
    Git Bash로 AWS 접속하기  (0) 2023.04.07
    데이터 중심 애플리케이션 설계 2장  (0) 2022.02.21
    git  (0) 2022.02.16

    댓글

Designed by Tistory.