oracel 저장 프로세스 생성 테이블

1193 단어 저장 프로세스
저장 프로세스를 사용하여 데이터 테이블을 만들려면 다음과 같이 하십시오.
생성 시 authid current 를 추가해야 합니다.사용자, 이 관건적인 문장을 추가하지 않으면 저장 과정에 이상이 발생할 것입니다. 이 문장은 권한을 부여하는 것과 같습니다.
다음과 같은 문을 생성합니다.
 
create or replace  procedure proc_create_table(
                       i_id varchar2
                    ) authid current_user
as

      v_tablename varchar2(30);--  

      v_flag number;

      v_sql varchar(200);

begin

      v_flag:=0;

      v_tablename:=CONCAT('Test_', UPPER(i_id));

      v_sql:='select count(*) from user_TABLES where table_name='''||v_tablename||'''';
    

      execute immediate  v_sql into v_flag;

      if v_flag=0 then --            
          execute immediate 
           'create table '||v_tablename ||
             '( DATETIME DATE, '||
             'id varchar2(32), '|| 
             'name varchar2(64) '|| 
            ' )';
      end if;

end;
이 스토리지 프로세스를 호출합니다.
begin createmnl('mnl_14'); end;

좋은 웹페이지 즐겨찾기