본문 바로가기
국비교육/JAVA

1월 14일 국비교육 32일차

by Diligejy 2019. 1. 14.

#1

JAVA EE

Connection URL => jdbc:oracle:thin:@127.0.0.1:1521:XE


#2

SQL> CREATE TABLE TEST03

  2  AS SELECT * FROM EMP;


SQL> CREATE TABLE TEST04 (ENAME, EMPNO)

  2  AS SELECT ENAME, EMPNO FROM EMP;


ⓒ 

SQL> CREATE TABLE TEST05(AAA, BBB)

  2  AS SELECT ENAME, EMPNO FROM EMP;


SQL> CREATE TABLE TEST06(ENAME, SAL)

  2  AS

  3  SELECT ENAME, SAL + NVL(COMM, 0) FROM EMP;


SQL> CREATE TABLE TEST07(ENAME, DEPTNO, DNAME)

  2  AS

  3  SELECT ENAME, DEPTNO, DNAME

  4  FROM EMP JOIN DEPT USING(DEPTNO);


#3

제약조건 - 무결성 때문에사용


NOT NULL 등 


COLUMN LABEL - 선언 시 뒤에다가 제약조건 붙이는 것

TABLE LABEL - 선언 해놓고 뒤에다가 제약조건 붙이는 것


#4

- NOT NULL은 '컬럼 레벨'에서만 가능

- 컬럼 여러 개를 조합하는 경우 '테이블 레벨'에서만 가능


UNIQUE는 NULL을 허용한다.


#5

PRIMARY KEY = UNIQUE + NOT NULL의 의미

테이블 당 1개만 생성 가능


#6

FOREIGN KEY DELETION OPTION


[구문]

[CONSTRAINT CONSTRAINT_NAME] CONSTRAINT_TYPE ON DELETE SET NULL


[CONSTRAINT CONSTRAINT_NAME] CONSTRAINT_TYPE ON 


#7

TEST

===============

ID   NO

1     2

3     4

5     6


1. TEST 테이블의 (ID, NO) MYPK라는 이름으로 제약조건(식별키)을 선언한다.

2. MYEXAM 테이블을 선언하면서 ID와 NO을 TEST 테이블의 식별키로 참조한다.

    NAME ID NO

      A     1   2 

      B     5    6


SQL> CREATE TABLE MYEXAM

  2  (NAME VARCHAR(20),

  3  ID NUMBER,

  4  NO NUMBER,

  5  CONSTRAINT FK_TOPICS FOREIGN KEY(ID, NO) REFERENCES TABLE_03(ID, NO));


#8

SQL> CREATE TABLE MYTABLE(

  2  NAME VARCHAR2(10),

  3  MYID CHAR(3) REFERENCES TABLE_PK ON DELETE SET NULL);


테이블이 생성되었습니다.


SQL> INSERT INTO MYTABLE VALUES('111', '1');


1 개의 행이 만들어졌습니다.


SQL> INSERT INTO MYTABLE VALUES('111', '2');


1 개의 행이 만들어졌습니다.


SQL> DELETE TABLE_PK WHERE ID = 2;


1 행이 삭제되었습니다.


SQL> SELECT * FROM MYTABLE;


NAME                 MYID

-------------------- ------

111                  1

111


SQL> SELECT * FROM TABLE_PK;


ID     SNAME

------ ----------------------------------------

1      AAA

4      DDD

7      FFF


'국비교육 > JAVA' 카테고리의 다른 글

1월 16일 국비교육  (0) 2019.01.16
1월 15일 국비교육 33일차  (0) 2019.01.15
1월 11일 31일차  (0) 2019.01.11
1월 10일 국비교육 30일차  (0) 2019.01.10
1월 9일 국비교육 29일차  (0) 2019.01.09

댓글