🍃웹개발 Spring

[SQL] SQL(CRUD)

개발자는신이야 2022. 9. 26. 14:36

SQL이란

관계형 데이터베이스 시스템(RDBMS)에서 자료를 관리 및 처리하기 위해 설계된 언어이다.

 

 

 

SQL의 특징

1. SQL은 대소문자를 가리지 않는다.

(단, 서버 환경이나 DBMS 종류에 따라 데이터베이스 또는 필드명에 대해 대소문자를 구분 하기도 한다.)

 

2.SQL 명령은 반드시 세미콜론(;)으로 끝나야한다.

 

3. 고유값은 따옴표('')로 감싸준다.

ex) select * from table where name = 'James';

 

4.SQL에서 객체를 나타낼 때는 백틱(``)으로 감싸준다.

ex) select `cost`, `type` from `invoice`;

 

5. 주석은 문장앞에 --를 붙여서 사용한다.

 

6. 여러 줄 주석은 /* */로 감싸준다.

 

참고: https://edu.goorm.io/learn/lecture/15413/%ED%95%9C-%EB%88%88%EC%97%90-%EB%81%9D%EB%82%B4%EB%8A%94-sql/lesson/767683/sql%EC%9D%B4%EB%9E%80

 

 

 

SQL사용하기

1. 테이블 생성하기(CREATE)

CREATE TABLE IF NOT EXISTS courses (
    id bigint NOT NULL AUTO_INCREMENT, 
    title varchar(255) NOT NULL,
    tutor varchar(255) NOT NULL,
    PRIMARY KEY (id)
);

@코드 분석:

CREATE TABLE IF NOT EXISTS courses

CRATE TABLE: 테이블을 생성한다

IF NOT EXIST: 해당 테이블이 존재하지 않는다면,

courses: (태이블명)

 

id bigint NOT NULL AUTO_INCREMENT

id: (변수명)

bigint: java의 Long과 같다.

NOT NULLAUTO: NULL일 수 없다.

AUTO_INCREMENT: 테이블이 생성될 때 마다 자동으로 생성해준다.(1부터 순차적으로 생성)

 

title varchar(255) NOT NULL

title: (변수명)

varchar(255): java의 String과 같다.

 

PRIMARY KEY (id)

primaty key: 기본키

기본키는 해당 테이블에서 가장 기본적인 값을 가진다.

-기본키는 다른 항목과 절대 중복되어 나타날 수 없는 단일 값을 가진다.

-기본키는 절대 null값을 가질 수 없다.

 

즉,  id 객체를 다른 항목과 정대로 중복되어 나타날 수 없는 단일 값을 가지게 한다.

 

2. 데이터 삽입하기(UPLOAD)

INSERT INTO courses (title, tutor) VALUES
    ('웹개발의 봄, Spring', '남병관'), ('웹개발 종합반', '이범규');

@코드 분석:

INSERT INTO courses (title, tutor) VALUES

INSERT INTO : ~에 대입한다

courses (title, tutor): courses테이블 안의 데이터인 title, tutor값 지정

Value: 값 지정

('웹개발의 봄, Spring', '남병관'), (): (,)기준으로 각 자리는 (title, tutor)와 같다.->해당 값에 해당 문자열이 대입된다.

 

3. 데이터 조회하기(READ)

SELECT * FROM courses;

코드 분석:

SELECT: 선택하다

(*): 모든 범위 지정

FROM courses: courses테이블안의 데이터

->courses테이블 내의 모든 데이터를 선택하여 불러온다.