[DBMS] 관계형 데이터베이스, create문, alter문, drop문
[관계형 데이터베이스_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으로 반환





[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문]
