컴퓨터/컴퓨터 ETC

데이타베이스(DB)의 종류와 기본적인 명령어들

푸른바다23 2017. 7. 13. 23:35

데이타베이스(DB)의 종류와 기본적인 명령어들 


데이타베이스(DB)라는 단어 들어보셨나요?

데이타베이스(DB)란 데이터 집합을 말합니다. 즉 데이터 저장공간이죠. 왜 데이터 공간을 만들어서 사용할까요? 

여러 사람들이 같은 데이터를 공유하기 위해 여러 사람들이 사용가능한 데이터 저장공간을 만듭니다.

이것을 바로 데이터베이스(DB) 라고 합니다.


많이 쓰는 데이터베이스(DB)에는 MSSQL , MYSQL, ORACLE이 있습니다.


예전에는 윈도우 서버를 많이 썼기 떄문에 MSSQL비율이 높았지만 현재는 ORACLE , MYSQL의 비율이 더 높습니다.

요즘은 윈도우 서버가 불안정할 뿐 아니라 서버 비용이 들기 때문에 리눅스를 이용한 무료 서버 구축을 많이 하는 편입니다.

그로 인해 ORACLE과 MYSQL의 사용빈도가 높아졌고, ORACLE은 안정적이지만 비싸고, MYSQL은 오픈소스이기 때문에 무료입니다.

그로 인해 ORACLE은 기업에서 많이 쓰고, MYSQL은 개인 및 중소업체에서 많이 쓰고 있습니다. 


MSSQL , MYSQL , ORACLE 모두 기본적인 명령어들은 비슷합니다.


오늘은 DML(DATA MANIPULATION LANGUAGE)에 속하는 명령어부터 알아보겠습니다. 

DML은 데이터 조작하는데 사용되는 언어로써 SELECT, INSERT , UPDATE , DELETE가 대표적인 명령어입니다.


TABLE을 생성되어 있다고 가정하고 진행하겠습니다.

이 TABLE의 이름은 KGON이며 , 이 KGON테이블의 컬럼으로는  SEQ(번호)와 TITLE(제목), USER(작성자이름)을 가지고 있다고 가정합니다.

TABLE생성하는 명령어는 CREATE 명령어가 있지만 이것은 다음 포스팅에서 설명하도록 하겠습니다. 

[TABLE생성은 DB툴에서 GUI를 통해 쉽게 만들수 있습니다.]


첫번째로 SELECT문에 대해서 알아보겠습니다.

SELECT는 TABLE에 존재하는 정보들을 조회하는 명령어 입니다. 

기본적인 SELECT사용법은 다음과 같습니다.

ex) SELECT * FROM KGON // KGON는 위에서 가정한 테이블명입니다.


ex) SELECT SEQ , TITLE, USER FROM KGON

*를 사용하면 모든 컬럼의 정보가 나오지만 컬럼이름을 나열하면 해당 컬럼의 정보만 출력하게 됩니다.


ex) SELECT SEQ AS KGON_SEQ FROM KGON

AS를 이용하면 SEQ라는 컬럼을 KGON_SEQ라는 별명으로 변경할 수 있습니다. 


ex) SELECT * FROM KGON WHERE SEQ =1

WHERE은 조건문으로 SEQ가 1인 값의 모든 정보를 조회합니다.


ex) SELECT * FROM KGON WHERE SEQ = 1 AND USER = 'KGON'

SEQ가 1이면서 USER가 'KGON'인 정보를 조회합니다.


ex) SELECT * FROM KGON ORDER BY SEQ ASC

KGON테이블의 모든정보를 조회합니다. 단 SEQ가 작은 번호부터 큰 번호 순서대로 보여줍니다. [ASC / 생략가능]

만약 큰번호부터 작은번호순으로 보여주려면 ORDER BY SEQ 뒤에 DESC를 붙여줍니다. 


두번째로 INSERT문에 대해서 알아보겠습니다.

INSERT는 TABLE에 정보를 입력하는 명령어입니다.

기본적인 INSERT사용법은 다음과 같습니다.

ex) INSERT INTO KGON ( SEQ , TITLE , USER ) VALUES ( 2, '제목', 'KGON2')


ex) INSERT INTO KGON ( SEQ , TITLE  ) VALUES ( 2, '제목') 

이와 같이 컬럼의 일부 생략하고 등록이 가능합니다.

[여기서 잠깐 , 테이블에는 필수값이 있을 수 있습니다. 그 필수값은 생략할 수 없습니다. ]


세번째로 UPDATE문에 대해서 알아보겠습니다. 

UPDATE는 TABLE에 저장된 정보를 수정하는 명령어입니다.

기본적인 UPDATE사용법은 다음과 같습니다

ex) UPDATE KGON SET TITLE = '제목2' WHERE SEQ = 1


ex) UPDATE KGON SET TITLE = '제목2' , USER = 'KGON2' WHERE SEQ = 1

바꾸고 싶은 컬럼이 여러개인 경우 , 를 사용하여 추가합니다.


ex) UPDATE KGON SET TITLE = '제목2' 

WHERE을 생략하는 경우 모든 TITLE이 제목2로 변경됩니다. 

[초보자들이 많이 하는 실수입니다. 변경해야하는 정보가 전체가 아니라면 WHERE을 붙여 꼭 조건을 확인합시다. ]


네번째로 DELETE문에 대해서 알아보겠습니다.

DELETE는 TABLE에 저장된 정보를 삭제하는 명령어입니다.

기본적인 DELETE사용법은 다음과 같습니다.

ex) DELETE FROM KGON


ex) DELETE FROM KGON WHERE SEQ = 1

SEQ가 1인 정보만 삭제합니다.


ex) DELETE FROM KGON 

모든 KGON의 정보를 삭제합니다.

[초보자들이 많이 사용하는 실수입니다. 백업한 정보가 없다면 복구가 불가능합니다.]

[DELETE를 하기 전에는 꼭 SELECT를 하여 조회해보고 나서 삭제하시기 바랍니다. ]


ex) SEQ 가 1인 값을 지우고 싶을 때

1. SELECT * FROM KGON WHERE SEQ = 1  : 조회를 통해 지울값이 맞는지 확인합니다.

2. DELETE FROM KGON WHERE SEQ = 1 : SELECT * 부분을 DELETE로 바꾸어 삭제하면 원하는 정보를 정확하게 삭제할 수 있습니다 .


오늘은 이렇게 간단히 DB의 개념, DB의 종류, DB에서 사용되는 기본적인 명령어들에 대해서 알아보았습니다.


다음에는 DB명령어에 대해서 심도있게 이야기를 적어보도록 하겠습니다.


긴글 읽어주셔서 감사합니다. 




반응형