본문 바로가기

《 IT 》/Database

[MySQL] 기초 문법 정리

[ MySQL ] 기초 문법 정리

(수정: -)


⚠️ 개요

해당 글은 작성자가 공부한 내용을 정리한 글입니다.

 

 

📕 MySQL 기초

SQL문법은 대소문자를 구별하지 않는다. 해당 글에서는 읽기 편하게 대소문자를 구별하여 사용할 것이다.

 

 

✅ 기초문법 - 데이터 언어

1.데이터 정의 언어 (DDL)

데이터베이스의 테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어들로 (생성, 변경, 삭제, 이름변경) 데이터 구조와 관련된 명령어들을 말함

SQL문 내용
CREATE 데이터베이스 객체를 생성 한다.
DROP 데이터베이스 객체를 삭제 한다.
ALTER 기존에 존재하는 데이터베이스 객체를 다시 정의하는 역활을 한다.
RENAME 기존에 존재하는 테이블명을 변경한다.
TRUNCATE 테이블 또는 테이블의 지정된 파티션에서 모든 행을 제거한다.

 

2.데이터 조작 언어 (DML)

스키마객체의 데이터를 입력, 수정, 조회 삭제한다.

SQL문 내용
INSERT 데이텁이스 객체에 데이터를 입력한다.
DELETE 데이터베이스 객체의 데이터를 삭제한다.
UPDATE 기존에 존재하는 데이터베이스 객체의 데이터를 삭제한다.
SELECT  데이터베이스 객체로부터 데이터를 검색한다.

 

3.데이터 제어 언어 (DCL)

권한의 설정과 회수

SQL문 내용
GRANT 데이터베이스 사용자 권한 설정
REVOKE 데이터베이스 사용자 권한 회수

 

✅ 기초문법 - 데이터 조작 언어 (DML)

1.SELECT문

SELECT문은 데이터베이스로부터 저장되어 있는 데이터를 검색 하는데 사용됩니다. (가장 많이 쓰입니다.)

<구문 순서>
SELECT select_list
FROM table_name
WHERE conditon (표현식, 상수, 비교 연산자 등)
ORDER BY (질의 결과 정렬을 위한 옵션[ABS(오름차순)/DESC(내림차순)])
<사용 방법>
SELECT 컬럼명 FROM 테이블명 WHERE 조건 ORFER BY 컬럼명 ASC or DESC;
<예시>
SELECT emp_no as 사번, first_name 성명, gender FROM employees WHERE gender = 'M';

 

2.INSERT문

INSERT문은 데이터를 삽입하는 쿼리문입니다. 테이블명 다음에 칼럼의 수에 맞게 값을 줘야합니다.

<구문 순서>
INSERT INTO table_name ((c1),(c2),(c3))
VALUES values ((v1),(v2),(v3))
<사용 방법>
INSERT INTO 테이블명 (칼럼명1, 칼럼명2, 칼럼명3) VALUES (값1,값2,값3);
<예시>
INSERT INTO membertbl VALUES ('lee','이건아','서울 강동구 천호동');
 
-테이블명에 있는 칼럼명에 순서에 맞게 값을 입력해주고 칼럼명과 값을 개수는 동일해야 합니다.
-테이블의 수에 맞춰서 값을 입력하지 않으면 오류가 발생한다.

 

3.UPDATE문

UPDATE문은 데이터를 수정하는 쿼리문입니다.

<구문 순서>
UPDATE table_name
SET calum1_name = value, calum2_name = value, ...
WHERE conditon
<사용 방법>
UPDATE 테이블명 SET 칼럼명 = 변경 값 , ... WHERE 조건;
-WHETE을 생략하면 모든 행에 있는 값이 변경된다.
<예시>
UPDATE membertbl SET memberName = '이국자' WHERE memberName = '이건아';
 
-칼럼명 memberName에서 '이건아'라는 이름을 가진 데이터만 '이국자'로 변경한다.

 

4.DELETE문

DELETE문은 데이터를 삭제하는 쿼리문입니다.

<구문 순서>
DELECT
FROM table_name
WHERE conditon (해당 조건에 맞는 데이터만 삭제합니다.)
<사용 방법>
DELECT FROM 테이블명 WHERE 조건;
-조건이 없으면 테이블에 모든 데이터를 삭제한다.
<예시>
DELECT FROM membertbl WHERE memberName = '이국자';
 
-전에 사진과 비교해보면 '이국자'가 표함된 열이 삭제된 것을 확인할 수 있다.
 

 

✅ 기초문법 - 데이터 정의 언어 (DDL)

1.CREATE문

CREATE문은 데이터베이스 or 테이블을 생성할 때 사용하는 쿼리문입니다.

1-1.CREATE DATABASE (데이터베이스 생성)

<구문 순서>
CREATE DATABASE database_name;
<사용 방법>
CREATE DATABASE 데이터베이스명;
-데이터베이스를 생성한다.

1-2.CREATE TABLE (테이블 생성)

<구문 순서>
CREATE TABLE table_name
(
field_name1 field_type1 CONSTRAINT,
field_name1 field_type1 CONSTRAINT,
...
)
<사용 방법>
CREATE TABLE 테이블명
(
필드이름1 필드타입1 제약조건,
필드이름1 필드타입1 제약조건,
...
)
-제약조건(CONSTRAINT) 선택
1.NOT NULL : 해당 필드는 NULL 값을 저장할 수 없게 됩니다.
2.UNIQUE : 해당 필드는 서로 가른 값을 가져야만 합니다.
3.PRIMARY KEY : 해당 필드가 NOT NULL과 UNIQUE 제약 조건의 특징을 모두 가지게 됩니다.
4.FOREIGN KEY : 하나의 테이블을 다른 테이블에 의존하게 만듭니다.
5.DEFAULT : 해당 필드의 기본값을 설정합니다.

 

2.ALTER문

ALTER문은 컬럼을 추가, 삭제, 변경, 수정을 할 수 있는 쿼리문입니다.

1-1.ALTER TABLE ADD (컬럼 추가)

선택한 테이블에 컬럼을 추가합니다.

<구문 순서>
ALTER TABLE table_name
ADD calum_name type option;
<사용 방법>
ALTER TABLE 테이블명 ADD 컬럼명 타입 옵션;
<예시>
ALTER TABLE membertbl ADD today date;

1-2.ALTER TABLE DROP (컬럼 삭제)

선택한 테이블에 컬럼을 삭제합니다.

<구문 순서>
ALTER TABLE table_name
DROP calum_name;
<사용 방법>
ALTER TABLE 테이블명 DROP 컬럼명;
<예시>
ALTER TABLE membertbl DROP today;
-'today'라는 컬럼이 삭제됩니다.

1-3.ALTER TABLE CHANGE (컬럼 변경 및 타입 변경)

선택한 테이블에 컬럼의 이름&타입을 변경합니다.

<구문 순서>
ALTER TABLE table_name
CHANGE calum_name change_calum_name type;
<사용 방법>
ALTER TABLE 테이블명 CHANGE 컬럼명 변경할컬럼명 타입;
<예시>
ALTER TABLE membertbl CHANGE memberName memberNickname char(10);
-이름과 타입을 변경합니다. (이때 타입을 적지 않으면 오류가 생깁니다.)

1-4.ALTER TABLE MODIFY (컬럼 타입 수정)

선택한 테이블에 컬럼의 타입을 수정합니다.

<구문 순서>
ALTER TABLE table_name
MODIFY calum_name type;
<사용 방법>
ALTER TABLE 테이블명 MODIFY calum_name type;
<예시>
ALTER TABLE membertbl MODIFY memberNickname char(20);
-'memberNickname'의 타입을 'char(20)'으로 변경합니다.

1-5.ALTER TABLE RENAME (테이블명 수정)

선택한 테이블의 이름을 변경합니다.

<구문 순서>
ALTER TABLE table_name
RENAME change_table_name;
<사용 방법>
ALTER TABLE 테이블명 RENAME 변경할테이블명;
<예시>
ALTER TABLE membertbl RENAME memberstble;
-'membertbl'을 'memberstbl'로 변경합니다.

'《 IT 》 > Database' 카테고리의 다른 글

[MySQL] 연산자  (4) 2023.12.01