개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

* 개요
- CREATE TABLE 명령문에서 서브쿼리 절을 이용하여 다른 테이블의 구조와 데이터를 복사하여 새로운 테이블 생성 가능
- 서브쿼리의 출력 결과가 테이블의 초기 데이터로 삽입
* 기능
- CREATE TABLE 명령문에서 지정한 칼럼 수와 데이터 타입과 반드시 일치
- 칼럼 이름을 명시하지 않을 경우 서브쿼리 칼럼 이름과 동일
- 무결성 제약조건은 NOT NULL 조건만 복사
기본 키, 참조 키와 같은 무결성 제약조건은 사용자의 재정의 필요
- 디폴트 옵션에서 정의한 값은 그대로 복사

 

 

 

 

* 사용 예
- 서브쿼리 절을 이용하여 주소록 테이블의 구조와 데이터를 복사하여 addr_second 테이블을 생성하여라.

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

* ​DESC[RIBE] 명령어
- 테이블의 생성 여부와 테이블의 구조를 확인하기 위한 명령어
- 칼럼 이름, 데이터 타입과 크기, NOT NULL 무결성 제약조건

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

* 기능
- 칼럼의 입력 값이 생략될 경우에 NULL 대신에 입력되는 기본 값을 지정하기 위한 기능
- 기본값 : 리터럴 값, 표현식, SQL함수 , SYSDATE, USER를 사용
- 칼럼이나 의사칼럼(NEXTVAL, CURRVAL)은 사용할 수 없음

 

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

- GLOBAL TEMPORARY : 임시 테이블을 만들기 위한 키워드로서 테이블 구조는 모든 세션에서 볼 수 있지만, 데이터는 테이블을 생성한 세션에서만 조회 가능
- schema : 데이터베이스 사용자 계정과 같은 의미
- table : 생성하고자 하는 테이블 이름
- column : 테이블에 포함되는 칼럼 이름
- datatype : 칼럼에 대한 데이터 타입과 길이
- DEFAULT expression : 데이터 입력 시 값이 생략된 경우에 입력되는 기본 값
- column_constraint_clause : 칼럼에 대해 정의되는 무결성 제약조건

 

 

 

* 사용 예
- 연락처 정보를 저장하기 위한 주소록(address)테이블을 생성하여라.

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

* 개요
- 테이블 생성은 테이블에 대한 구조를 정의하고, 데이터를 저장하기 위한 공간을 할당하는 과정
- 테이블에 대한 구조 정의는 테이블을 구성하는 칼럼의 데이터 타입과 무결서 제약조건을 정의하는 과정

 

 


* 테이블  이름 정의 방법
- 문자(A-Z, a-z)로 시작, 30자 이내
- 문자(a-z,A-Z), 숫자(0-9), 특수문자(_,$,#) 사용 가능
- 대소문자 구별 없음, 소문자로 저장하려면 단일 인용부호 이용
- 동일 사용자가 소유한 다른 객체의 이름과 중복 불가
- 서로 다른 테이블에서 동일한 데이터를 저장하는 칼럼 이름은 가능하면 같은 이름을 사용
- 필요에 따라 언제든지 테이블 생성 가능
- 완성된 설계도에 따라 테이블을 생성 권장


 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

 

* 시퀀스 삭제시에는
- DROP SEQUENCE 명령문 사용 


 

 

* 사용예
- s_seq 시퀀스를 삭제하여라. 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

* 시퀀스 정의 변경

- 시퀀스 생성후 증가치, 최소 값, 최대 값 등의 정의를 수정
- 변경된 시퀀스 정의는 새로 생성되는 시퀀스 값부터 적용
- ALTER SEQUENCE 명령문을 사용하여 변경
- START WITH절은 생성 직후의 시작 값을 의미, 변경 불가

 

* 시퀀스 정의 변경시에는

- ALTER SEQUENCE 명령문 사용

 

* 사용 예
- s_seq 시퀀스의 최대 값을 200으로 변경하여라

 


 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

개발자에게 배우는 개발자교육! 구로 오라클자바교육학원 www.oraclejava.co.kr

 

 

* 개요

 - 기본키로 사용할 수 있는 적절한 칼럼이 없거나 다수의 칼럼을 결합해야 식별이 가능한 경우에는 시퀀스를 이용
- NEXTVAL 함수를 사용


 

+ Recent posts