< 테이블 내용 확인>
select * from 테이블 명
< 명령어 종류 >
DML(생성) : insert, update, delete, select
DCL(수정) : grant, deny
DDL(제어) : create, alter, drop ...
<테이블 생성>
형식 : create table 테이블명(칼럼명)
자료형 : varchar2, char, number, date, timestamp, clob, blob....
< 테이블 생성 예시 #1 >
create table test(no number, name varchar2(10));
describe test;
<DB 내의 모든 테이블 이름 확인>
select * from tab;
create table test(no number primary key, -- 중복을 허용하지 않음, 동일한 자료를 입력할 수 없음
name varchar2(10) not null, tel varchar2(15),
inwon number(3), addr varchar2(30));
< 자료 추가 하기 >
-- insert into 테이블명\칼럼명\,...) values(입력자료)...
< 자료 추가 예시 >
insert into test(no,name,tel,inwon,addr) values(1,'인사과','111-1111',5,'강남구 역삼동');
< 자료 수정 >
< update 테이블명 set 칼럼명=수정값,... where 조건 >
< 자료 수정 예시 >
update test set inwon=12 where no=1;
update test set tel='777-7777', inwon=22 where no=3;
update test set inwon=null where no=3;
update test set inwon='' where no=3;
< 자료 삭제 >
delete from 테이블명 where 조건
< 자료 삭제 예시 >
delete from test where no=2; -- 만일 where 을 입력하지 않으면 구조를 제외한 모든 레코드 폭파
< 테이블의 모든 행을 삭제 >
truncate table 테이블명 : 모든 행을 폭파(취소 불가)
< 커밋(커밋해줘야만 제대로 연동됨) >
commit;
< 무결성 제약 조건 >
무결성(constraint) 제약 조건 : 잘못된 자료의 입력을 막고자 제약조건 부여
domain 제약조건 : 구조 작성시 칼럼의 이름, 성격, 크기, null 허용 여부
기본키(primary key)
사용자 정의 제약조건 : check, unique, foreign key
< 기본키(PK) 제약조건 >
방법1) 칼럼 레벨
create table aa(bun number primary key, irun char(10));
select constraint_type, constraint_name from user_constraints where table_name ='AA';
방법2) 제약조건 이름 부여
create table aa(bun number constraint aa_bun primary key, irum char(10));
방법3) 테이블 레벨
create table aa2(bun number, irum char(10), constraint aa_bun primary key(bun));
< 제약조건 추가 및 제거 >
추가 : alter table 테이블명 add contraint 제약조건명 제약조건명
제거 : alter table 테이블명 drop contraint 제약조건명 제약조건명
<제약 조건 검사(입력되는 자료의 칼럼값 검사) >
create table aa(bun number, irum char(10), nai number(2) check(nai >=20));
insert into aa values(1,'tom',25);
insert into aa values(2,'tom2', 25);
< unique : 특정 칼럼에 대해 동일한 값 >
create table aa(bun number, irum char(10) unique);
insert into aa values(1,'tom');
insert into aa values(2,'tom');
drop table aa;
< 외부키(참조키,Foreign key, FK) // 엑셀 값 참조하는 느낌으로 생각하자 >
on delete cascade : 부모 테이블의 행이 삭제되면 자식도 함께 삭제
create table jikwon(bun number primary key, irum varchar2(10), buser char(10));
insert into jikwon values(1,'한송이','인사과');
insert into jikwon values(2,'박치기','영업과');
insert into jikwon values(3,'한가혜','총무과');
insert into jikwon values(4,'한송이','총무과');
create table gajok(code number primary key, name varchar2(10), birth date, jikwon_bun number references jikwon(bun));
insert into gajok values(100, '공기밥', '2000-01-12', 1);
insert into gajok values(101, '김밥', sysdate, 2);
delete from jikwon where bun = 1; -- 불가
delete from jikwon where bun = 4; -- 가능
< default : 특정 칼럼에 초기값 부여 >
create table aa(bun number, irum varchar2(10), juso varchar2(20) default '강남구 역삼동');
insert into aa values(1, '강남루', '강남구 신사동');
insert into aa(bun, irum) values(2, '박치기');
'교육' 카테고리의 다른 글
SQL select 명령어 알아보기 (0) | 2018.05.30 |
---|---|
자바교육학원 기초부터 실무까지! (0) | 2018.05.24 |
빅데이터 교육과정 6월 개강 안내 (0) | 2018.05.17 |
자바(JAVA) 조건문 반복문 (0) | 2018.05.17 |
자바(JAVA) 연산자 알아보기 (0) | 2018.05.16 |