Backend/DB

DB(2)- Transaction/Constraint

creativeDeveloper! 2022. 9. 26. 16:05
728x90

1) commit: 실행한 쿼리를 확정
 select 다음으로 중요함!!
 auto commit : 쿼리를 실행하면 자동으로 commit 하는것.(oracle일때는 반드시)
select @@autocommit;-- 1이면 설정/0이면 미설정

set autocommit=0;-- auto commit off
set autocommit=1;-- auto commit on;

auto commit은 data에만 한정 된다(insert,update,delte)
 DDL문은 되돌릴 수 없다(CREAT,ALTER,DROP,TRUNCATE)

 2) rollback : 실행 쿼리를 되돌린다.
select * from employees e ;
delete from employees ;
rollback;

insert into employees (EMP_NO,first_name,family_name,email,mobile)
valuES(200,'JIHUN','OH','JIHOON@EMAIL.COM','01023453457');
commit;

 1. 기본키 제약 조건: 중복 허용하지 않음, NULL도 허용하지 않는다.

 PRIMARY KEY(PK)
 테이블 종속(1 테이블에 1개의 기본키)
기본키는 한개 이상의 컬럼으로 구성된다.

테이블 생성시 PK도 함께 생성(가장 많이 사용)
create table PK_TEST(
FIRST_COL INT(3) primary KEY,
second_COL VARCHAR(4)
);

* 이미 만들어진 테이블에 추가하는 방식
ALTER TABLE[테이블명] ADD CONSTRAINT[제약조건 타입]([적용 필드]);

2. NOT NULL
키 라기보다는 컬럼의 속성으로 취급한다.
alter TABLE[테이블명] MODIFY [컬럼명][데이터 타입]([사이즈]) NOT NULL;
alter table pk_test MODIFY second_COL VARCHAR(4) not null;
desc pk_test;

3. 제약조건 삭제
alter table [테이블명] drop [제약조건 종류];
alter table pk_two_table drop primary key;

 

 

 

728x90

'Backend > DB' 카테고리의 다른 글

DB(3)-ERD 관계도/SUB QUERY/JOIN  (0) 2022.09.27
DB(1)-DML/INSERT/UPDATE/DELETE/SELECT  (0) 2022.09.26