[Oracle] SQL Developer 사용하여, 테이블에 사용된 쿼리(DDL, DML, ...)를 추출/조회하는 방법.
2024. 1. 15. 11:20ㆍDatabase/oracle
728x90
728x90
SQL Developer ?
- 오라클에서 개발한 데이터베이스 개발 및 관리 도구.
작업 시나리오.
- SQL Plus 를 사용하여, *.sql(DDL, DML …)을 수행.
- SQL Developer 를 사용하여, 위에서 수행된 쿼리를 추출/조회.
필자의 작업 환경.
- 오라클 서버 버전.
# sqlplus -v
SQL*Plus: Release 11.2.0.2.0 Production
- SQL Developer 버전.
SQL Plus 를 사용하여, *.sql(DDL, DML …)을 수행.
- SQL Plus 접속, *.sql 실행 작업은 링크를 참고한다.
*.sql 작성.
- 테스트 테이블 생성.
- 제약 조건 생성(기본 키 설정, 외래 키 설정)
- 데이터 삽입.
$vi export_sd.sql
/* DDL 테스트 테이블 생성. */
CREATE TABLE ALUSER (
USER_ID VARCHAR2(28) NOT NULL,
STA_TYPE NUMBER(1) NULL,
USER_ROLE NUMBER(3) NULL,
PASSWD VARCHAR2(24) NULL,
USER_NAME VARCHAR2(12) NULL,
EMAIL VARCHAR2(64) NULL,
CREATED_DATE CHAR(8) NULL,
PHONE VARCHAR2(32) NULL
);
ALTER TABLE ALUSER
ADD ( PRIMARY KEY (USER_ID) ) ;
ALTER TABLE ALUSER
ADD ( FOREIGN KEY (USER_ROLE)
REFERENCES ALUSERROLE (ROLE_ID) ) ;
/* DML 테스트 데이터 입력. */
INSERT INTO ALUSER (USER_ID, USER_ROLE, USER_NAME, PASSWD, STA_TYPE, EMAIL, CREATED_DATE, PHONE) VALUES ('root', 2, 'Admin Root', '...', 1, '', '', '');
COMMIT;
*.sql 실행.
$ sqlplus $ORACLE_CONNECT_INFO
SQL*Plus: Release 19.0.0.0.0 - Production on Mon Jan 15 10:47:13 2024
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> @export_sd.sql
...
Commit complete.
SQL>
SQL Developer 를 사용하여, 수행된 쿼리를 추출/조회.
1. Oracle Server로 접속.
2. 테이블 익스포트 실행.
3. 익스포트 설정.
4. 수행된 쿼리가 추출된 것을 확인.
- 테이블 생성, 제약 조건 생성(테이블의 기본 키 설정, 외래 키 설정), 데이터 삽입, 고유 인덱스 생성, ...
--------------------------------------------------------
-- 파일이 생성됨 - 월요일-1월-15-2024
--------------------------------------------------------
--------------------------------------------------------
-- DDL for Table ALUSER
--------------------------------------------------------
CREATE TABLE "TUP_RESOURCE"."ALUSER"
( "USER_ID" VARCHAR2(28 BYTE),
"STA_TYPE" NUMBER(1,0),
"USER_ROLE" NUMBER(3,0),
"PASSWD" VARCHAR2(24 BYTE),
"USER_NAME" VARCHAR2(12 BYTE),
"EMAIL" VARCHAR2(64 BYTE),
"CREATED_DATE" CHAR(8 BYTE),
"PHONE" VARCHAR2(32 BYTE)
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "TUP_RESOURCE" ;
REM INSERTING into TUP_RESOURCE.ALUSER
SET DEFINE OFF;
Insert into TUP_RESOURCE.ALUSER (USER_ID,STA_TYPE,USER_ROLE,PASSWD,USER_NAME,EMAIL,CREATED_DATE,PHONE) values ('root',1,2,'...','Admin Root',null,null,null);
--------------------------------------------------------
-- DDL for Index SYS_C0015972
--------------------------------------------------------
CREATE UNIQUE INDEX "TUP_RESOURCE"."SYS_C0015972" ON "TUP_RESOURCE"."ALUSER" ("USER_ID")
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "TUP_RESOURCE" ;
--------------------------------------------------------
-- Constraints for Table ALUSER
--------------------------------------------------------
ALTER TABLE "TUP_RESOURCE"."ALUSER" ADD PRIMARY KEY ("USER_ID")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "TUP_RESOURCE" ENABLE;
ALTER TABLE "TUP_RESOURCE"."ALUSER" MODIFY ("USER_ID" NOT NULL ENABLE);
--------------------------------------------------------
-- Ref Constraints for Table ALUSER
--------------------------------------------------------
ALTER TABLE "TUP_RESOURCE"."ALUSER" ADD FOREIGN KEY ("USER_ROLE")
REFERENCES "TUP_RESOURCE"."ALUSERROLE" ("ROLE_ID") ENABLE;
728x90
728x90
'Database > oracle' 카테고리의 다른 글
[Oracle] LONG RAW로 저장된 데이터를 평문(VARCHAR2)으로 조회하는 방법. (0) | 2024.06.25 |
---|---|
[oracle] ORA-01034, ORA-27101 해결 방법. (0) | 2023.09.01 |
[oracle] ORA-22859: invalid modification of columns 해결 방법. (0) | 2022.08.10 |
[oracle] 기본키와 연결된 테이블을 찾는 방법. (0) | 2022.07.15 |
[oracle] Oracle Instant Client(linux) 설치 & 설정 & sqlplus 접속 가이드.(oracle19c instant client 설치 & 설정 & sqlplus 접속 예시) (0) | 2022.04.29 |