DBMS (MySQL)

[DBMS] 관계형 데이터베이스, create문, alter문, drop문

(งᐛ)ว 2023. 7. 25. 11:46
728x90

[관계형 데이터베이스_RDBMS]

데이터가 하나 이상의 열과 행의 테이블에 저장됨

상호작용을 기반으로 설정되는 여러 테이블 간의 논리적 연결

 

 

릴레이션(표, 테이블) : 정보를 구분하여 저장하는 기본단위. 동일 DB 내에서는 같은 이름의 릴레이션이 존재할 수 없음(오류발생)

애트리뷰트(속성) : 하나의 열은 하나의 속성정보를 의미

차수 : 한 릴레이션에 있는 애트리뷰트의 수

튜플(레코드, 데이터) : 릴레이션에 실제 값이 들어있는 각각의 행

카디날리티 : 튜플의 갯수. 0이 될 수 있음(데이터가 없는 경우)

도메인 : 각각의 속성이 가질 수 있는 값들의 집합. 의도했던 값만 저장, 관리하기 위해 사용 ex) 성별의 경우 도메인은 '남','여'

스키마 : DB의 구조와 제약 조건. DB 구성시 데이터가 갖는 값의 제약 조건. 속성 4개(구조)와 도메인 4개(제약조건)의 합


[SQL 자료형]

숫자형 : INT, FLOAT, DOUBLE / 문자형 : CHAR, VARCHAR, TEXT / 날짜형 : DATE, DATETIME 등

 

CHAR : 지정한 크기만큼 무조건 크기에 맞춰 공백을 붙여서라도 모두 사용(저장)

VARCHAR : 사용한 길이까지 유동적으로 입력된 값만 저장. 남는자리 사용X

varchar(20) => 도메인


[create문]

 

[create문 옵션]

NOT NULL : NULL(아무것도없는)값 들어가지 못함 => 무엇이든 들어가야됨

UNIQUE : 해당 테이블에서 고유한 하나의 값이 들어가야됨

PRIMARY KEY : NOT NULL과 UNIQUE의 조합. 중복,공란 불가. 테이블당 하나만 가짐. 기본 키 ex)주민등록번호

FOREIGN KEY : 두개의 테이블을 연결해주는 다리역할. 다른 테이블과 매치되는 데이터를 찾기위한 참조 키. 새로 추가되는 데이터(튜플)에서 외래 키에 해당하는 값이 참조하는 테이블에 존재하는지 확인

CHECK : 값이 정해진 조건에 충족 여부 확인

DEFAULT : 아무것도 쓰지않으면 DEFAULT로 정해진 값을 가짐 ex) NOT NULL DEFAULT 0 => 아무것도 입력X => 0으로 반환

not null 로 설정하면 무조건 값지정 필요
unique로 설정하면 중복 불가
기본 키와 외래 키

 

[alter문]

테이블 수정 시 사용. 컬럼(속성) 수정, 변경, 삭제 등

사용 전 현재 사용하고 있는 DB 확인 => use 구문 확인 필수!

 

속성삭제 : alter table 테이블명 drop column 삭제할속성명;

속성추가 : alter table 테이블명 add column 추가할속성명 새로운자료형 옵션;

속성명변경 : alter table 테이블명 rename column 기존속성명 to 바꿀속성명;

속성자료형변경 : alter table 테이블명 modify column 속성명 바꿀자료형;

속성명,자료형변경 : alter table 테이블명 change column 기존속성명 바꿀속성명 바꿀자료형 옵션;

테이블명변경 : alter table 테이블명 rename to 바꿀테이블명;

 

기본키삭제 : alter table 테이블명 drop primary key;

기본키부여 : alter table 테이블명 add primary key(속성명);

 

테이블확인 : desc 테이블명; 또는 select * from 테이블명; 또는 show tables;

 


[drop문]

728x90