R은 Relation 관계를 뜻함
Relation Database Managements System
관계형데이터베이스는 레코드(행)과 칼럼(열)로 되어있는 테이블로 되어 있는데 테이블과 테이블의 관계(Emtity ↔ Entity 의 Relation ⇒ER)
이렇게 표현된 데이터베이스는 SQL을 통해 관리 및 접근한다.
핵심은 테이블간의 관계, 규칙(제약조건), CRUD(생성, 조회, 수정, 삭제)
관계형 데이터 조작언어를 SQL이라고 한다.
Oracle, MySql, MS-SQL(Microsoft), H2(테스트용으로 쓰인다.), MariaDB, SqlLite(안드로이드에 내장) 등이 있다.
장점
MongoDB→Jsom, XML과 같은 Collection 데이터 모델 구조 사용
[ 테이블 관련 문법 ]
[ 칼럼 관련 문법 ]
테이블에 데이터를 추가하는 역할 (create: 회원, 게시글, 상품 추가)
insert into 테이블명(칼럼명1, 칼럼명2…) values(값1, 값2 …);
칼럼명n에 해당하는 값n을 넣음
insert into member0615(userId, userPw, email) values('m1', '1111', 'a@gmail.com');
insert into member0615(userId, userPw, email) values('m2', '1111', 'a@gmail.com');
insert into member0615(userId, userPw, email) values('m3', '1111', 'a@gmail.com');
commit; --oracle실제 반영
select * from member0615;
[ SELETE ]
데이터베이스에서 데이터를 검색하는 역할 ( read: 회원, 게시글, 상품 조회)
selset ~ from ~ where
select 조회칼럼명 from 테이블명;
select * from 테이블명; → 테이블에 있는 모든 데이터 조회
select userId, userPw from member0615;
select userId, userPw, email from member0615;
select * from member0615;
--글 번호가 1인 게시글을 조회 => 상세내역 조회
select * from board_test01 where board_id=1;
[ UPDATE ]
테이블 내에 존재하는 데이터를 수정하는 역할 (update: 회원, 게시글, 상품 수정)
update ~ set ~ where
update 테이블명 set 칼럼명1=변경값 … where 칼럼명=조건;
조건에 해당하는 칼럼에서 칼럼명n에 해당하는 변경값으로 변경함
```sql
update member0615 set userPw = '2222' where userId = 'm1';
commit;
select * from member0615;
```
```sql
--member0615테이블의 userId가 m2레코드의 userPw를 2222, email을 m2@gmail.com로 변경
update member0615 set userId = 'm2' where userId = '2222';
update member0615 set userPw='2222', email='m2@gmail.com' where userId = 'm2';
commit;
```
[ DELETE ]
테이블에서 데이터를 삭제하는 역할 (delete: 회원, 게시글, 상품 삭제)
delete from~where
delete from 테이블명 where 칼럼명=조건;