저번에 테이블 생성과 데이터 추가를 해보았으니 이번에는 테이블을 삭제해볼게요! 만든 테이블이 사실 원하는 게 아니었던 거죠! 그럼 삭제해야만 되겠죠?
drop table EMP;
=> 테이블이 삭제됩니다!
이제 dept_code를 varchar(5) 타입으로 해서 다시 생성해볼게요!
첫번째 방법,
create table EMP(
empno int not null primary key,
emp_name varchar(30) not null,
age int not null,
sal int not null,
dept_code varchar(5) not null
);
=> 다시 EMP 테이블이 생성됩니다.
commit;
=> 이러면 서버, HDD, SSD 등 물리적 저장장치에 보내지고 한 번 커밋한 것은 다시 돌아오지 않아요... 안녕~
두번째 방법,
alter table EMP modify DEPT_CODE int;
=> 이러면 테이블 데이터 타입이 바뀐답니다!
+잠깐! 이걸 다시 이전 타입으로 돌리고 싶다고 rollback을 믿으시면 안 됩니다!
rollback은 DML구문에 사용할 때에 적용되기 때문이에요~
전에 테이블에 데이터를 넣었잖아요? 그때 썼던 insert문 같은 경우에는 rollback이 된다는 말이에요.
그러면 추가했던 데이터가 롤백문에 의해 사라지겠죠~
+만약 commit문을 사용했다면 DML구문이라도 rollback문은 적용이 안 된다는 점도 기억하기!
delete from EMP;
=> 이러면 모든 데이터가 삭제돼요. 정말 모든 애가 삭제되기 때문에 특정한 것을 삭제하고 싶다면 where절을 적어주어야 한답니다!
delete from EMP
where EMPNO = 1000;
=> 이러면 데이터를 삭제하는데, 그 조건이 EMPNO가 1000인 거만 삭제한다는 거예요!
+ 얘도 rollback문을 사용해서 돌릴 수 있답니다.
그런데 테이블에 데이터를 삽입하고 조회할 때 입력한 영어가 그대로 출력되어 나타나면 아무래도 한국어보다는 보기가 어렵고 너무 길겠죠? 여기에 별명 같이 한국어를 붙여넣어 조회되도록 만들 수 있는 방법이 있답니다!
select EMPNO as '사원번호', EMP_NAME as "이름", AGE as "나이", SAL as "연봉", DEPT_CODE as "부서코드"
from EMP;
=> 이렇게 하면 별명으로 나온답니다!
이 편이 타 부서와 의사소통할 때에도 가독성이 좋겠죠~
'SQL' 카테고리의 다른 글
SQLD 9 (0) | 2023.09.09 |
---|---|
SQLD 8 (0) | 2023.09.08 |
SQLD 6 (0) | 2023.09.07 |
SQLD 5 (0) | 2023.09.07 |
SQLD 4 (1) | 2023.09.07 |