본문 바로가기

Database/Oracle SQL

[SQL] Oracle SQL 기초

SQL(Structured Query Language)이란
 데이터베이스에 저장된 데이터를 조회, 입력, 수정, 삭제하는 등의 작업을 하기위한 질의 언어

 

테이블 생성하기
 어떤 데이터를 저장할 것인지 정한 후 테이블을 생성한다.

create table 테이블명 (컬럼명 컬럼타입);

 

컬럼 타입
 number(n) – 수치 데이터 저장시 사용
 char(n) – 고정된 크기(길이)의 글자 저장
 varchar2(n) – 글자의 길이가 변동적일 때 사용
 date – 날짜 저장에 사용

 

primary key( )
 데이터 무결성 제약 조건 -> 테이블에 부적절한 데이터가 입력되는 것을 방지하기 위해 테이블 생성시 컬럼에 지정하는 것.

 

SQL insert 명령

테이블에 새로운 데이터를 한 건씩 추가함.
 into 절에 컬럼을 명시하지 않으면 테이블을 생성할 때 정의한 컬럼 순서와 동일하게 values 값을 입력한다.
 컬럼의 데이터 타입이 문자(CHAR, VARCHAR2) 또는 날짜(DATE)일 경우에는 작은 따옴표(‘ ‘)를 사용한다.

 

테이블 레코드 조회하기

select [ all | distinct ] 컬럼_목록
from 테이블명
[where 조건]
[group by 컬럼_목록]
[having 조건]
[order by 컬럼_목록 [asc | desc]];

 

update 문
 저장되어 있는 데이터 값을 변경할 때 사용.

update 테이블명 set 컬럼명1=컬럼값1, 컬럼명2=컬럼값2, 컬럼명3=컬럼값3, . . .
[ where 조건]

 

delete문
 테이블에 있는 레코드를 삭제할 때 사용한다.

 

 

--테이블 생성
create table member(
name varchar2(10), 
userid varchar2(10),
pwd varchar(10), 
email varchar(20), 
phone char(13), 
admin number(1) default 0, --0:사용자, 1: 관리자
primary key(userid)
);

-- name 컬럼의 길이 변경
alter table member modify(name varchar2(20));

--데이터 삽입
insert into member values('이순신', 'sslee', '1234', 'sslee@email.com', '010-2222-2332', 0);
insert into member values('유관순', 'ksyou', '1234', 'ksyou@email.com', '010-8847-5633', 1);
insert into member values('장보고', 'bkjang', '1234', 'bkjang@email.com', '010-5574-7868', 0);
insert into member values('이순신', 'soonsin', '1234', 'sslee@email.com', '010-2222-2332', 0);

-- 데이터 저장
commit;

--전체 테이블 데이터 불러오기
select * from member;
-- where 연산
select * from member where userid='sslee';
-- and 연산
select * from member where name='이순신' AND userid='sslee';
-- or연산
select name, userid, email from member where userid='sslee' or userid='soonsin';
--비교연산
select * from member where admin > 0;
-- 조회한 레코드의 정렬
select * from member where admin >= 0 order by userid;
-- 부정 연산자
select * from member where not (userid='sslee');
-- in 연산자
select * from member where userid in ('ksyou', 'bkjang');


-- update문
update member set phone='010-3333-5555' where userid='bkjang';
select* from member;
commit;

-- insert : 강호동, hdkang
insert into member values('강호동', 'hdkang', '0000', 'hdkang@email.com', '010-1234-5678', 1);

-- delete
delete member where name='강호동';
commit;
select * from member;

 

 

728x90
반응형