[테이블 생성 - CREATE ]
CRATE TABLE 테이블명(
컬럼명 자료형()
)
테이블 명명 규칙 : 변수와 동일하다.(명사화 시켜서 의미 전달)
CREATE : 물리 명령어, 디스크에 바로 적용됨.
-테이블의 설계는 데이터베이스의 뼈대이다.
-서브쿼리를 이용하여 복사 테이블을 만들때 제약은 복사가 되지 않는다. (as 이용)
-
CREATE table student3( name varchar2(50)not null, age number(3), addr varchar2(100), tel varchar2(50) not null ) create table emp2 as (select * from emp) --서브 쿼리를 이용하여 복사테이블을 만들때 제약은 복사가 되지 않는다. --내용말고 테이블 구조만 복사하기 , create table emp4 as (select *from emp where 0=1 ) -- 빈 테이블이 출력되게[테이블 수정- ALTER :사용하지 말기]
-물리적으로 저장되어있는 데이터를 변경하면 인덱스가 파괴될 수 있음.(테이블 불안정함)
- alter을 사용해서 변경하지말고 테이블 다시 생성하기.
ㄴ 추가 (ADD)
ㄴ 수정 (MODIFY) : 자료형의 크기를 변경할때는 동일하거나 크게로는 가능, 큰거에서 작은거로는 변경 안됨. 컬럼 이름 변경 안됨.
ㄴ 삭제 (DROP)
alter table emp3 add ( email number(4)) alter table emp3 modify (email varchar2(100) -- 자료형의 크기를 변경시 큰거에서 작은거로는 안됨.컬럼 이름 변경 안됨. ) alter table emp3 drop column email
[테이블 삭제 - DROP]
쓰레기 데이터가 생기므로 purge recyclebin 으로 연결고리 삭제.
drop table emp
[INSERT - 삽입 명령문]
INSERT INTO 테이블명 (컬럼명)
VALUES (값)
select *from student insert into student (name,age,addr,tel) values ('홍길동', 20, '서울','02-1234-5678') --테이블 순서를 알고 있고 모든 데이터를 넣는다고 하면 insert into student values ('둘리',30,'부천','032-1212-2222') --insert에도 서브쿼리를 이용할 수 있다. insert into emp4 (select *from emp)
[UPDATE - 수정 명령문]
UPDATE 테이블명
SET 컬럼명 = 변경할값
WHERE 조건update student set tel = '02-1234-5678' where name = '홍길동' update emp4 set sal = sal*1.05 update emp4 set sal = sal*1.05 where deptno = (select deptno from dept where loc ='DALLAS')
[DELETE - 삭제 명령문]
DELETE FROM 테이블명
WHERE 조건절Delete from student where name = '하니' delete from emp4 where deptno = (select deptno from dept where dname = 'SALES')[COMMIT - 저장] (논리 계층 데이터를 물리 계층으로 옮김)
-INSERT, DELETE, UPDATE 논리계층 (메모리에 저장)
-CREATE , DROP , 물리 계층 (디스크에 저장)
[ROLLBACK - 돌아가기]
'개발자 > 백엔드 웹 개발자 과정(국비)' 카테고리의 다른 글
| 221222_HTML(1) (0) | 2022.12.22 |
|---|---|
| 2022년 12월 19일 _ 29회차 (JDBC) (0) | 2022.12.19 |
| [DB] JOIN,서브쿼리 (0) | 2022.12.15 |
| [DB]정리 (0) | 2022.12.14 |
| [DB]날짜데이터, 형변환,NVL,DECODE,GROUP BY (0) | 2022.12.14 |