DB 데이터 형식
CHAR형과 같은 고정길이 형식이 있고, VARCHAR같은 가변길이 데이터 형식이 있다. 가변길이 형식은 데이터를 다 사용하지 않으면 나머지 데이터를 반환하기 때문에, 가변하는 값에서는 VARCHAR형식을 사용하는 것이 낫다.
데이터의 형식뒤에 괄호를 하고 숫자를 넣으면 데이터 길이를 제한할 수 있다. VARCHAR(500) 처럼 (최대 500개까지)
테이블 수정
테이블을 생성할때는 CREATE, 삭제할 때는 DROP, 수정할 때는 ALTER TABLE을 이용한다.
ALTER TABLE 테이블명 MODIFY 바꿀 값 형태로 사용한다.
ALTER TABLE test DROP COLUMN AGE 처럼 드랍시킬때도 사용할 수 있다.
반대의 경우 ALTER TABLE test ADD COLUMN AGE처럼 ADD를 이용한다.
데이터가 하나도 없을 때는 다시 CREATE하면 되지만, 데이터가 존재할 때는 ALTER TABLE을 사용해야한다.
데이터의 삽입
INSERT INTO 테이블명 VALUES (값1,값2,....) 형태로 데이터를 삽입한다.
이 처럼 지정한 컬럼의 값만 삽입할 수도 있다. 데이터 삭제의 경우 DELETE WHERE문을 이용한다
제약조건은 이름 그대로 데이터베이스에 데이터를 입력할 때 제약을 건다는 것이다.
종류에는 도메인 제약조건/ 엔티티 제약조건 / 릴레이션 제약조건이 있다.
도메인 제약조건
도메인 : 컬럼의 유효한 값의 범위.
다음과 같은 데이터베이스가 있을 때, 학번 : 0이상의 정수, 납입금 : 100만원 이하의 값 등 컬럼내부에 들어갈 수 있는 값의 유효한 범위를 도메인이라고한다. 이 도메인에 제약조건을 거는것이 도메인 제약조건이다.
반드시 입력 값이 필요한 경우에는 NOT NULL을 이용해서 제약을 건다.
NULL값이 들어오면 안되지만, 사용자가 값을 입력하는 경우가 아닌경우(등록일자, 조회수 등) EDFAULT를 이용한다.
CREATE TABLE test
( ID VARCHAR2(20) NOT NULL,
EMAIL VARCHAR2(200) NULL,
PHONE CHAR(13) NOT NULL,
PWD VARCHAR2(200) DEFAULT "111")
간단히 컬럼명 뒤에 NOT NULL만 써주면 된다. 이미 생성된 테이블의 경우 ALTER TABLE을 이용한다. 위 경우 예시는
ALTER TABLE test MODIFY EMAIL VARCHAR(200) NOT NULL
체크제약조건은 값의 범위나 형식이 알맞지 않은경우 데이터가 입력되지 않도록 제약을 건다.
이 처럼 CHECK키워드를 이용해서 데이터의 형식을 정해줄 수 있다.
'JPA > 데이터베이스' 카테고리의 다른 글
트랜잭션 격리수준 (0) | 2021.10.21 |
---|---|
@Transcational (0) | 2021.10.19 |
트랜잭션, 기본키와 외래키 (0) | 2021.07.28 |