SQL 이란?
- SQL은 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리 및 처리하기 위해
개발된 특수 목적의 프로그래밍 언어이다.
- RDBMS에서 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터 베이스 객체 접근 조정 관리를 위해 개발되었다.
- SQL의 종류에는 3가지가 있다.
- DDL ( Data Definition Language ) : 데이터 정의어
- DML ( Data Manipulation Language ) : 데이어 조작어
- DCL ( Data Control Language ) : 데이터 제어어
- 각각에 해당하는 명령어는 다음과 같다.
- DDL : CREATE (생성) / ALTER (컬럼 변경) / DROP (테이블 삭제)
- DML : SELECT (선택) / INSERT (삽입) / UPDATE (수정) / DELETE (데이터 삭제)
- DCL : GRANT (권한 부여) / REVOKE (권한 회수)
SQL 쿼리문 작성 예시
- DB 선택 : USE
DB명
;
- 테이블 생성 : CREATE TABLE
테이블명
( 속성명
데이터타입
옵션
);
- 테이블 변경
- ALTER TABLE
테이블명
ADD 속성명
데이터타입
;
- ALTER TABLE
테이블명
DROP 속성명
;
- ALTER TABLE
테이블명
RENAME COLUMN 기존 속성명
TO 변경 속성명
;
- ALTER TABLE
테이블명
MODIFY 속성명
데이터타입
;
- 테이블 삭제 : DROP TABLE
테이블명
;
- 데이터 조회 : SELECT
속성명1
, 속성명2
, ... FROM 테이블명
WHERE 조건
;
- 데이터 삽입 : INSERT INTO
테이블명
( 속성명1
, 속성명2
) VALUES( 값1
, 값2
);
- 데이터 삭제 : DELETE FROM
테이블명
WHERE 조건
;
- 데이터 수정 : UPDATE
테이블명
SET 속성명
= 값 WHERE 조건
;
- 권한 부여 : GRANT
권한명
ON 테이블명
TO 사용자명
;
- 권한 회수 : REVOKE
권한명
ON 테이블명
FROM 사용자명
;
- 위 처럼 SQL 쿼리문을 이용하여
name
, addr
의 속성을 가지고 있는 STUDENT
라는 테이블을 형성하고, name : 홍길동, addr : 서울시 인 데이터를 삽입한 뒤 조회하는 쿼리문을 예시로 작성해봤다.
- 이와 같이 DDL , DML , DCL 을 이용하면 다양한 쿼리문을 작성할 수 있다.
다른 사람이 작성한 SQL 쿼리문 가져오기(mysql 기준)
- 리눅스 컴퓨터에 다른 사람이 작성한 SQL 쿼리문을 압축한 파일을 다운받는다.
명령어 : wget [경로명]
- unzip 명령어를 이용해 압축을 해제해준다. ( 명령어가 없다면 새로 설치해준다.)
명령어 : unzip [파일명]
- DB 서버의 관리자 권한으로 압축 해제한 파일을 DB 서버에 추가
명령어 : mysql -u root -p < [파일명.sql]
- 쿼리문에 접근할 수 있도록 권한을 부여한다.
명령어 : GRANT ALL PRIVILEGES ON [파일명].* TO [사용자명]
오늘의 느낀점 👀
- 새롭게 깨달은 내용 : mysql에서 사용자 생성 시 접근 가능한 주소를 부여하고
권한을 변경하고 싶을때는 ALTER, GREANT 가 아닌 RENAME 을 사용한다.
RENAME USER test2@'%' TO test2@777.777.0.77;
- 오늘은 실제로 SQL 쿼리문 작성을 실시해봤다. SQL 쿼리문을 문제로만 보다가
실제로 작성해보고 어떻게 동작하는지 확인해보니 신기하고 흥미로웠다🙂
- 이제부터 중요한것은 이론적으로 공부했던 쿼리문을 실제로 쳐보는 것이다❗