Notice
Recent Posts
Recent Comments
Link
«   2026/05   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Archives
Today
Total
관리 메뉴

mo1lusca의 블로그

[Unifox] - SQL 본문

Unifox

[Unifox] - SQL

mo1lusca 2025. 10. 3. 22:25

동아리 시간에 배운 DB와 SQL에 대해 정리하려 한다.


DB란??

Data Base, 즉 데이터를 모아두는 저장소이다.

DB를 관리하기 위해서 DBMS를 사용하는데, 주요 DBMS로는 MySQL, SQLite, Oracle database 등이 있다.

필자는 MariaDB를 썼었다

 

SQL이란??

DB에 데이터를 저장, 수정, 삭제, 조회등 작업을 할 때 사용하는 언어이다.

SQL 문법은 크게 정의, 조작, 제어 3기능으로 나눌 수 있다.

 

SQL 정의어 _ DDL

CREATE - 새로운 데이터 베이스 or 테이블을 만든다.

예를 들어 hello_table이라는 테이블을 만들고 싶다면,

CREATE TABLE hello_table( value int ); 이런식으로 만들어주면 된다!

 

DROP - 데이터 베이스 or 테이블을 삭제한다.

ROLLBACK이 적용되지 않는 명령어이니 사용시에 주의하자..

 

ALTER - 기존 테이블의 열이나 자료형을 변결할 때 사용한다.

 

SQL 조작어 _ DML

SELECT - 데이터 베이스에서 필요한 정보를 검색한다.

UPDATE - 특정 행의 정보를 변경하는데에 사용한다. WHERE 절과 같이 사용해 범위를 좁혀야 한다.

DELETE - 테이블의 특정 데이터를 삭제하는데에 사용한다. WHERE 절과 같이 사용해 범위를 좁혀야 한다.

WHERE 절을 사용하지 않으면 모든 데이터가 삭제될 수 있다.....

 

SQL 제어어 _ DCL

GRANT - 사용자에게 조회, 입력과 같은 권한을 부여하는데에 사용한다.

REVOKE - 부여한 권한을 삭제하는데에 사용한다.

COMMIT - 변경사항을 DB에 반영하는데에 사용한다. Git에서의 commit과 비슷하다.

ROLLBACK - Undo 기능이다. COMMIT 명령어를 사용하면 그 이전으론 돌아갈 수 없다..


직접 내 정보를 담은 DB를 만들어보자!

mysql> CREATE TABLE my_info( name varchar(10), age int, school varchar(10) );

name, age, school 정보를 담는 테이블을 만들었다!

 

근데 갑자기 동아리 정보도 넣고싶어졌기 때문에

mysql> ALTER TABLE my_info ADD club varchar(10);

ALTER를 이용해 열 정보를 수정해줬다.

 

값을 넣어보자. 값 삽입은 INSERT로 수행할 수 있다.

mysql> insert into my_info values ('molluska', 17, 'SRIHS', 'UNIFOX');

 

이런! 이름을 mollusca가 아니라 molluska로 저장해버렸다.

 

이럴땐 UPDATE를 이용해 값을 바꿔주면 된다.

mysql> UPDATE my_info SET name='mollusca' WHERE name='molluska';

WHERE을 이용해 이름이 molluska인 행의 name을 mollusca로 업데이트 해줬다.

 

현재 테이블의 상황을 보려면

mysql> SELECT * FROM my_info;

이 명령어를 사용하면 된다. my_info의 * (=모든 원소)를 선택해 출력하겠다는 의미이다.

이렇게 표 형식으로 테이블이 보여진다.

 

이렇게 콘솔에 표를 띄우는것도 쓸만하지만, 난 GUI가 좋기때문에 DBeaver로도 테이블을 봐보겠다.

구체적인 사용법은 다른 블로그를 찾아보도록 하자

 

DBeaver에서 localhost로 접속하면 로컬에 있는 DB를 볼 수 있다.

이런식으로 테이블에 값들이 잘 들어가있는것을 확인할 수 있다!


이제 DB도 배웠으니 남은건 진짜 웹사이트 제작밖에 없다.


'Unifox' 카테고리의 다른 글

[Unifox] - 웹해킹 2차시  (0) 2025.11.07
[Unifox] - 웹해킹 1차시  (0) 2025.11.02
[Unifox] - Flask 2차시  (0) 2025.10.03
[Unifox] - Flask 1차시  (0) 2025.09.22
[Unifox] - Python  (1) 2025.08.27