레이블이 BIND_ARRAY인 게시물을 표시합니다. 모든 게시물 표시
레이블이 BIND_ARRAY인 게시물을 표시합니다. 모든 게시물 표시

2022년 1월 8일 토요일

오라클,PL/SQL,DBMS_SQL,동적SQL실습 테이블 생성, 멀티행 입력,BIND_ARRAY, EXECUTE, 오라클교육, 오라클학원, 오라클동영상,자바교육,자바학원,SQL교육, SQL학원

 오라클,PL/SQL,DBMS_SQL,동적SQL실습  테이블 생성, 멀티행 입력,BIND_ARRAY, EXECUTE, 오라클교육, 오라클학원, 오라클동영상,자바교육,자바학원,SQL교육, SQL학원


http://ojc.asia/bbs/board.php?bo_table=LecSQLnPlSql&wr_id=730 


오라클,PL/SQL,DBMS_SQL,동적SQL실습 테이블 생성, 멀티행 입력,BIND_ARRAY, EXECUTE, 오라클교육, 오라클학

오라클,PL/SQL,DBMS_SQL,동적SQL실습 테이블 생성, 멀티행 입력,BIND_ARRAY, EXECUTE, 오라클교육, 오라클학원, 오라클동영상,자바교육,자바학원,SQL교육, SQL학원오라클 PL/SQLDBMS_SQL동적SQL실습테이블 생성,

ojc.asia

https://www.youtube.com/watch?v=XbRQfXxbyng&list=PLxU-iZCqT52CfP98Y4gCDKIm52tKvgy36&index=42 


https://www.youtube.com/watch?v=XbRQfXxbyng&list=PLxU-iZCqT52CfP98Y4gCDKIm52tKvgy36&index=42 


https://www.youtube.com/watch?v=tO4rkJAC7FM&list=PLxU-iZCqT52CfP98Y4gCDKIm52tKvgy36&index=40 


DBMS_SQL

동적SQL실습

테이블 생성, 멀티행 입력


실습





DBMS_SQL을 이용하여 DDL문(CREATE, DROP)을 실행하고 생성된 테이블에 5개의 행을 오라클의 TABLE TYPE(배열)에 데이터를 넣은 후 멀티 행을 바인딩 하여 INSERT를 한번에 실행(EXECUTE)하는 예제를 실습하면서 DBMS_SQL 패키지 사용법에 대해 이해합니다.

https://www.youtube.com/watch?v=oR_UKxk_HO4&list=PLxU-iZCqT52CfP98Y4gCDKIm52tKvgy36&index=39

[실습1 : DBMS_SQL 패키지를 이용하여 테이블 생성 및 멀티행 바인딩 후 한번에 입력 실습]


CREATE OR REPLACE PROCEDURE CREATE_INSERT_TEST

AS

    V_CURSOR        NUMBER := DBMS_SQL.OPEN_CURSOR();

    V_CNT           NUMBER;    

    V_ID_ARR        DBMS_SQL.NUMBER_TABLE;

    V_NAME_ARR      DBMS_SQL.VARCHAR2_TABLE;    

    V_SQL           VARCHAR2(200);

    V_AFFECTED_ROWS NUMBER;

BEGIN    

    -- TEST 테이블이 생성되어 있는지 딕셔너리 뷰에서 확인

    SELECT COUNT(*) INTO V_CNT FROM USER_TABLES WHERE TABLE_NAME = 'TEST';

    -- 이미 생성되어 있다면 삭제 후 생성

    IF V_CNT > 0 THEN

       DBMS_SQL.PARSE(V_CURSOR, 'drop table test', DBMS_SQL.NATIVE);

       DBMS_SQL.PARSE(V_CURSOR, 'create table test ( id number, name varchar2(20)) ', DBMS_SQL.NATIVE);

       

       DBMS_OUTPUT.PUT_LINE('##### 삭제 후 생성');

    -- 생성되어 있지 않은 경우 그냥 생성

    ELSE

       DBMS_SQL.PARSE(V_CURSOR, 'create table test ( id number, name varchar2(20)) ', DBMS_SQL.NATIVE);

       DBMS_OUTPUT.PUT_LINE('##### 생성');

    END IF;   

    

    -- 5건 데이터 입력 위해 배열에 데이터 생성

    FOR i IN 1..5 LOOP

        V_ID_ARR(i) := i;

        V_NAME_ARR(i) := i || '길동';

    END LOOP;

    

    -- SQL문장을 변수에 담기

    V_SQL := 'insert into test (id, name) values (:id, :name)';

    -- SQL구문 파싱

    DBMS_SQL.PARSE(V_CURSOR, V_SQL, DBMS_SQL.NATIVE);

    -- 바인드 변수 연결, 한건씩 연결시 BIND_VARIABLE 사용

    DBMS_SQL.BIND_ARRAY(V_CURSOR, 'id', V_ID_ARR);

    DBMS_SQL.BIND_ARRAY(V_CURSOR, 'name', V_NAME_ARR);

    -- SQL실행, 한번에 5건이 입력됨

    V_AFFECTED_ROWS := DBMS_SQL.EXECUTE(V_CURSOR);

    -- 입력건수 츨력

    DBMS_OUTPUT.PUT_LINE('INSERT 건수 : ' || V_AFFECTED_ROWS);

    

    DBMS_SQL.CLOSE_CURSOR(V_CURSOR);

EXCEPTION

   WHEN OTHERS THEN

      DBMS_OUTPUT.PUT_LINE(SQLERRM);

    IF DBMS_SQL.IS_OPEN(V_CURSOR) THEN

       DBMS_SQL.CLOSE_CURSOR(V_CURSOR);

    END IF;

END;


exec CREATE_INSERT_TEST;

select * from test;






#오라클,#PLSQL,#DBMS_SQL,#동적SQL,#BIND_ARRAY, #오라클교육, #오라클학원, #오라클동영상,#자바교육,#자바학원,#SQL교육, #SQL학원,오라클,PLSQL,DBMS_SQL,동적SQL,BIND_ARRAY, 오라클교육, 오라클학원, 오라클동영상,자바교육,자바학원,SQL교육, SQL학원

(C#교육동영상)C# ADO.NET 실습 ODP.NET/ODAC 설치 오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원

  (C#교육동영상)C# ADO.NET 실습  ODP.NET/ODAC 설치  오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원 https://www.youtube.com/watch?v=qIPU85yAlzc&list=PLxU-i...