SQL

DATE : 2023/11/2

SQL : Structured Query Language

이를 처리하는 server가 달라지게 된다.

이 과정에서 사실 DB가 등장하는 데..! 구조를 보면

WAS 와 DB가 소통하는 구조임을 알 수 있다.

동적 페이지를 처리하는 과정에서 DB에 접근할 일이 있으면

필요한 데이터를 DB에게 받아 페이지를 만들고 WEB에게 결과를 넘기는 것이다.

그렇다 보니 WAS는 DB에 접근할 수 있는 권한이 있어야 하고,

DB에게 데이터를 달라고 요청할 줄 알아야 한다.

WAS가 데이터를 다루기 위해 DB에게 요청할 때 사용하는 언어, 그게 바로 SQL이다!!!

간단하게 SQL을 어떻게 작성할 수 있는 지 빠르게 살펴보자.


[ SQL #1 : select ]

데이터를 얻고자 할 때 사용하는 SQL은 select이다.

select COLUMN_NAME from TABLE_NAME

select문을 작성하는 문법은 위와 같다.

DataBase에서 살펴본 student_grade table을 대상으로 예시를 들어보면

select student_name from student_grade

student_grade에 있는 모든 row에 대해 student_name column 값만 출력하는 SQL은 위와 같다.

만약 모든 COLUMN 값을 출력하고 싶다! 하면 기호 * 를 사용하면 된다.

select * from student_grade

조금 더 나아가 만약 "이름이 Yoshi"인 학생의 점수를 출력하고 싶다면 where을 사용하면 된다.

where은 select문에서 조건을 넣고 싶을 때 사용한다.

select score from student_grade where student_name="Yoshi"

출력하고자 하는 column을 COLUMN_NAME 자리에 넣어주고

select 마지막에 where을 붙여 조건을 작성하면 된다.

지금은 학생의 이름이 Yoshi인 경우가 조건이기 때문에

student_name column 값이 Yoshi인 값을 찾도록 where문을 작성한 것!

[ SQL #2 : insert ]

select는 DB에서 데이터를 가져올 때 사용한다면 반대로

DB에 데이터를 갖다 넣을 때는 insert문을 사용한다.

insert into TABLE_NAME (COL1, COL2, .. COLN) values (v1, v2, ... valN)

데이터를 넣을 때는 Table에 어떤 column에 어떤 값을 넣을 건지 고려해야 하기 때문에

column 이름과 각각의 값을 나열해주는 형태로 SQL을 작성한다.

만약 모든 column에 값을 넣을 거라면 column 이름은 생략하되

insert into TABLE_NAME values (v1,v2, ... valN)

모든 column에 대한 값을 모두, 순서대로 적어주어야 한다.

예를 들어 학생 이름이 "mango"이고 점수가 86이라면 아래와 같이 적어줄 수 있다.

insert into student_grade (student_name, score) values ("mango", "86")

Last updated