SQL/SQL 개념정리

Table 생성

별다방체리콕 2024. 1. 2. 17:17

 

 

 

 

 

 

 

 

 

이름 붙이는 법

  • TABLE 명이나 COLUMN 명은 문자로 시작하고 30자 이내로 지정
  • A ~ Z, a ~ z, 0 ~ 9, _, $, # 을 사용할 수 있음
  • 한 USER 내에서는 다른 OBJECT 의 이름과 동일하게 지정 불가능
  • ORACLE 7 SERVER 예약어를 사용할 수 없음
  • 대소문자 구별 X

 

 

 

 

 

 

 

 

Oracle 7 datatype

  • CHAR (size) : 고정된 size 의 문자 값, 최대 255 자까지 지정 가능
  • VHARCHAR2 (size) : size 내에서의 가변길이 문자 값, 최대 2000 자까지 지정할 수 있음
  • LONG : 가변길이 문자 값, 최대 2 기가 바이트까지 사용가능
  • TABLE 당 한 개의 COLUMN 에만 지정할 수 있음
  • NUMBER (p, s) : 정수, 소수 자리 수의 합이 P, 소수 자리수가 s인 숫자값, 최대 38 자리수까지 지정할 수 있음
  • DATE : 날짜와 시간 값, B.C. 4712년 1월 1일부터 A.D. 4712년 12월 31일까지 입력 가능
  • RAW (size) : size 내에서의 가변 길이 BINARY DATA
  • LONGRAW : 가변길이 BINARY DATA

 

 

 

 

 

 

 

 

 

다른 table 로부터 table 생성

💡 기존하는 TABLE로부터 데이터와 구조를 복사하여 TABLE 생성

 

 

 

 

 

 

 

 

 

 

 

 

Constraint

  • NOT NULL
    • COLUMN-CONSTRAINT 로만 기술해야 함
    • COLUMN 에 NULL 값이 입력되는 것 허용하지 않음

 

  • NUIQUE
    • UNIQUE KEY 에는 중복된 값을 허용하지 않음
    • 복합 COLUMN 으로 구성된 UNIQUE KEY 는 TABLE-CONSTRAINT 로만 기술해야 함
    • UNIQUE KEY COLUMN 의 UNIQUE INDEX FILE 이 자동 생성됨
    • COLUMN 이나 TABLE-CONSTRAINT 로 기술할 수 있음
    • 한 개의 COLUMN 혹은 복합 COLUMN 을 UNIQUE KEY 로 지정

 

  • PRIMARY KEY
    • PRIMARY KEY 에는 중복된 값과 NULL 값을 허용하지 않음
    • 복합 COLUMN 으로 구성된 PRIMARY KEY 는 TABLE-CONSTRAINT 로만 기술해야 함
    • COLUMN 이나 TABLE-CONSTRAINT 로 기술할 수 있음
    • ROW 를 UNIQE 하게 대표할 수 있는 한 개의 COLUMN 혹은 복합 COLUMN 으로 지정

 

 

  • FOREIGN KEY
    • 같은 TABLE 혹은 다른 TABLE 의 PRIMARY KEY 나 UNIQUE KEY 값 참조
    • COLUMN 이나 TABLE-CONSTRAINT 로 기술할 수 있음
    • 한 개의 COLUMN 혹은 복합 COLUMN 으로 지정
    • FOREIGN KEY 값은 모 TABLE 에 존재하는 데이터와 같던가 NULL 값 허용

 

 

 

 

 

CONSTRAINT 명은 다음과 같이 지정함

  • CONSTRAINT 는 DICTIONARY 에 저장되므로 참조하기 쉽게 의미있게 붙여줌
  • 일반적으로 TABLE명_COLUMN명_CONSTRAINT 종류와 같은 형태로 지정함
  • 동일한 USER 내에서 CONSTRAINT 명은 UNIQUE 해야 함
  • 사용자가 CONSTRAINT 명을 지정하지 않으면 ORACLE7이 SYS_Cn의 형태로 붙임

'SQL > SQL 개념정리' 카테고리의 다른 글

Sequence  (0) 2024.01.04
Data DICTONARY  (2) 2024.01.04
Subquery  (0) 2024.01.02
Group Functions  (0) 2024.01.02
Table 에서 Data 검색  (1) 2024.01.02