소리소문 없이... 사랑도 명예도 이름도 남김 없이...
DexCore.net

DataBase/Oracle 116

Procedure 내에서 Procedure, Function, Table 등 생성하기

권한부여. SQL> GRANT CREATE ANY TABLE TO 유저; SQL> GRANT EXECUTE ON DBMS_SQL TO 유저; CREATE OR REPLACE PROCEDURE GITS.PIT_GENERATE_PLSQL /*************************************************************************** PURPOSE ORACLE PL/SQL 문장을 입력 받아 실행한다.(Function Create) REVISIONS: Ver Date Author Description --------- ---------- --------------- -------------------------------- 1.0 2012-07-06 탑 1. Create..

DataBase/Oracle 2012.07.16

오라클 패키지의 마법을 풀어봅시다. 2편

오라클 패키지의 마법을 풀어봅시다 - Part2오라클 2007/08/12 01:57앞서 블로그에서 패키지가 프로시저에 비해 왜 뛰어난지에 대해 간략하게 논의한 바 있다.또 한번의 테스트를 통해서 패키지를 적절히 사용할 경우 얼마나 큰 효과를 얻을 수 있는지 알아보자.오라클이 제공하는 프로시저나 펑션을 사용해서 비지니스 로직을 구현해 본 경험이 있는 사람이라면치를 떠는 한가지 현상이 있다. 바로 library cache pin 경합 현상이다.예를 들어 특정 쇼핑몰에서 가격을 계산하는 특정 로직을 get_price(goods_no) 라는 함수로 구현했다고 하자. 이 경우다음과 같이 수 백, 수 천개의 SQL 문장이 이 함수를 사용하게 된다.SELECT get_price(goods_no) as price, g..

DataBase/Oracle 2012.07.16

오라클 패키지의 마법을 풀어봅시다. 1편

오라클 패키지의 마법을 풀어봅시다 - 프로시저 대신 패키지를 써야 하는 이유오라클 2007/07/29 02:00많은 오라클 전문가들이 프로시저대신 패키지를 사용할 것을 권장한다. 특히 패키지를 만든 오라클 사람들이...하지만, 왜 그럴까? 많은 사람들이 이 사실을 모르고, 심지어 프로시저를 사용하면 되는데 패키지가 무슨 필요? 라며 잘못된 견해를 전파한다.프로시저가 아닌패키지를 사용해야 하는 이유는, 결론부터 말하면 패키지의 향상된 의존성(Dependency)관리 때문이다.아래 간단한 패키지와 프로시저가 있다. 이 둘의 기능(하는 일)은 완전히 동일하다. 다만 하나는 패키지로 구현되어 있고, 다른 하나의 프로시저로 구현되어 있을 뿐이다.-- 패키지create or replace package pkgtes..

DataBase/Oracle 2012.07.16

DATABASE LINK 사용 방법

DATABASE LINK 사용 방법 ======================= 먼저 한글 data간의 전달을 위해 두 db간의 character set이 같아야 합니다. character set을 확인하는 방법은 sqlplus system/manager select * from v$nls_parameters; 하여 보면 nls_characterset에 대한 값이 나옵니다. 예를 위해 다음과 같은 환경을 가정하겠습니다. HOST NAME : HP7 - SUN7 ORACLE_SID : ORA7 - ORATEST 이라 할 때 1) HP7 에서 SUN7로 DB LINK 생성하기. scott/tiger 로 Login SQL*NET V1의 경우 SQL> create public database link HP7TOS..

DataBase/Oracle 2012.07.16

DBMS_METADATA 패키지를 이용

Oracle 9i 이상의 스키마 스크립트 받기 DBMS_METADATA 패키지를 이용--테이블 스키마 뽑기--DBMS_METADATA.GET_DDL('TABLE', '테이블명', '테이블소유자') SELECT DBMS_METADATA.GET_DDL('TABLE', TABLE_NAME, 'EIS')||';' FROM USER_TABLES; --인덱스 스키마 뽑기--DBMS_METADATA.GET_DDL('INDEX', '인덱스명', '인덱스소유자')SELECT DBMS_METADATA.GET_DDL('INDEX', INDEX_NAME, 'EIS')||';' FROM USER_INDEXES; --테이블 스페이스 스키마 뽑기 -- TABLESPACE와 USER는 DBA 궈한이 있는 유저로 실행 SELECT D..

DataBase/Oracle 2012.07.13

Oracle Schema 관련 쿼리

오라클 select를 이용한 내용 확인 ※ Oracle SID 확인 SQL> select instance from v$thread; ※ Oracle DB_NAME 확인 SQL> select name from v$database; ※ Oracle User 확인 SQL> select * from all_users; ※ 등록된 User 목록 보기 SQL> select username, user_id from dba_users order by username; ※ User가 소유한 모든 테이블 보기 SQL> select table_name from user_tables; ※ 사용자 정보 확인 SQL> select username, default_tablespace,temporary_tablespace from ..

DataBase/Oracle 2012.07.13
728x90
반응형