UTS study

DATABASE 수업 # 1강_ 기초 PSQL 문법 정리

jimmmy_jin 2024. 3. 3. 16:29

아래의 내용에는 수업에서 배운 이론 내용 위주로 정리함. 

커맨드 및 자세한 사용법은 다음 글을 참조.

 

접근 커맨드 정리

  • \list(or \l) : 전체 Database Instance 목록
  • \dt : 접속한 DB Instance의 Table 목록
  • \ds : Sequence 목록
  • \df : Function 목록
  • \dv : View 목록
  • \du : User 목록

데이터의 기본 형태(스프레드 시트 형태 예시)

1. Boy

BoyNo BoyName BoyMobile GirlNo
1 Adam 0414 1234 1
2 Bob 0414 1235 2
3 Charlie 0414 1238 2
4 Dennis <NULL> <NULL>

 

여기서 Boy 시트의 BoyNo는 데이터의 고유 번호인 Primary Key 이다.

GirlNo 는 Foreign Key가 된다.

GirlNo GirlName GirlMobile
1 Alice 1234 4123
2 Bonnie 1234 1414

 

GirlNo 는 Girl 시트의 Primary Key이다.

 

핵심 기본 4가지 -> Create, Update, Insert, Delete. 

 

1. CREATE

Create table Boy
(
      boyNo            integer,
      boyName          char(10),
      girlNo           integer,
      boyMobile        char(10),

   CONSTRAINT boyNoPK  PRIMARY KEY (boyNo),
   CONSTRAINT girlNoFK FOREIGN KEY (girlNo) REFERENCES Girl ON DELETE RESTRICT
);

CONSTRAINT boyNoPK PRIMARY KEY (boyNo) -> boyNo를 Primary Key로 지정한다.

CONSTRAINT girlNoFK FOREIGN KEY (girlNo) REFERENCES Girl ON DELETE RESTRICT

-> girlNo를 FOREIGN KEY(외래키) 로 지정하고 REFERENCES Girl: girlNo 열이 참조하는 외부 테이블의 이름은 "Girl"이다.

이것은 현재 테이블의 girlNo 열이 "Girl" 테이블의 어떤 열과 일치해야 함을 나타낸다. 

 

ON DELETE RESTRICT: 이 부분은 외래 키가 참조하는 행이 삭제될 때 어떻게 동작해야 하는지를 지정, 여기서는 "RESTRICT"로 설정되어 있으며, 이는 참조되는 행이 삭제되지 않도록 제한한다는 의미이다. 즉, 현재 행을 참조하는 다른 행이 있을 때만 삭제가 허용됨.

 

* 다른 ON DELETE 옵션으로는 CASCADE, SET NULL, SET DEFAULT 등이 있음

 

CREATE TABLE Girl
(
girlNo        INTEGER,
girlName      CHAR(10),
girlMobile    CHAR(10),  

CONSTRAINT girlNoPK PRIMARY KEY (girlNo)
);

 

 

INTEGER -> 숫자, CHAR(10) -> 글자(글자 수)

CONSTRAINT girlNoPK PRIMARY KEY (girlNo): 이 부분은 테이블에 제약 조건을 지정.

-> 여기에서는 "girlNoPK"라는 Pirmary Key 제약 조건을 girlNo 열에 지정하고 있음.

또한 기본 키는 테이블의 각 레코드를 고유하게 식별하며 고유하고 널이 아닌 값을 가져야 함

 

2. INSERT

INSERT INTO Girl VALUES(1, 'Alice',   '0414 1234');
INSERT INTO Girl VALUES(2, 'Bonnie',  '0414 1235');

 

INSERT INTO TableName VALUES() 식을 사용하여 스키마의 순서대로 넣어준다.

* SELECT * FROM Girl; 식을 통하여 Girl 시트만 선택해서 볼 수 있다.

 

Entity Integrity: 기본 키

  • 각 테이블은 고유한 값을 가져야 하는 열(또는 열들)이 있어야 합니다.
  • 예를 들면, 학생 번호, 은행 계좌와 같이 유일한 값을 가져야 하는 열이 있어야 합니다.

Referential Integrity: 외래 키

  • 외래 키의 값은 (1) "소스" 테이블의 값과 일치하거나, (2) null일 수 있습니다.
  • 테이블 간의 유효한 참조를 보장합니다.

* Nature Join

아무 조건 없이 두 시트를 붙혀버림. ( 보기 아주 불편함 🔥)

 

 

1강의 내용은 여기까지...

'UTS study' 카테고리의 다른 글

DATABASE #  (0) 2024.03.10
DATABASE #3강 _ Entities and Relationships  (0) 2024.03.04
DATABASE #2강 _ The Single Entity  (0) 2024.03.04
DATABASE 수업 #0 _ PSQL 커맨드 모음  (0) 2024.03.03