mo1lusca의 블로그
[Unifox] - SQL 본문
동아리 시간에 배운 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 |