랄라
SQL (MYSQL 기준) 본문
*Database
여러가지 데이터를 모아둔 저장소
SQL
정의어(DDL)
- CREATE : 데이터베이스와 테이블 생성
CREATE DATABASE 데이터베이스이름; //데이터베이스 우선적으로 생성되어있어야 테이블 생성가능
CREATE TABLE 테이블이름(
...
필드생성 및 조건 작성;
)
- ALTHER : 데이터베이스와 테이블의 내용 수정
ALTER TABLE 테이블이름 ADD 필드이름 필드타입;
ALTER TABLE 테이블이름 DROP 필드이름;
ALTER TABLE 테이블이름 MODIFY COLUMN 필드이름 필드타입;
- DROP : 데이터베이스 및 테이블 삭제 (구조와 데이터 전부삭제)
DROP DATABASE 데이터베이스이름;
DROP TABLE 테이블이름;
- TRUNCATE : 테이블의 데이터를 삭제 (테이블의 구조는 남김)
TRUNCATE DATABASE 데이터베이스이름;
TRUNCATE TABLE 테이블이름;
- RENAME : 데이터베이스 및 테이블 이름 변경
RENAME DATABASE 기존데이터베이스이름 TO 변경데이터베이스이름;
RENAME TABLE 기존테이블이름 TO 변경테이블이름;
조작어(DML)
- INSERT : 테이블 내부에 값 추가
INSERT INTO 테이블명(필드명, ...) VALUES(필드 내부에 입력할 값 ... );
- SELECT : 테이블 내부값 조회
SELECT [DISTINCT] [* 또는 조회할 필드명] FROM 테이블명 [WHERE 조건];
*DISTINCT(중복제외)
- DELETE : 테이블 내부값 삭제
DELETE FROM 테이블명 WHERE 조건;
*CASCADE : 참조 여부 상관없이 삭제.
*REDIRECT : 해당 테이블이 참조되는곳이 있을경우 삭제불가능.
제어어(DCL)
- GRANT : 권한 부여
GRANT 권한 ON 객체 TO 유저;
- REVOKE : 권한 철회, 회수
REVOKE 권한 ON 객체 FROM 유저명;
*from 과 to 를 보면 어떤것이 권한을 부여하고 회수하는지 확인이가능하다.
CONSTRAINT(제약사항)
- 테이블에 제약사항 추가
ADD CONSTRAINT 제약사항 이름 CHECK 제약사항 내용(컬럼조건)
ALTER TABLE student ADD CONSTAINT st_rule CHECK (registraion_number <30000000)
*foreign key도 제약사항중 하나이다
- 제약사항 삭제
DROP CONSTAINT 제약사항이름
ALTER TABLE student DROP CONSTAINT st_rule
DEFAULT 속성
컬럼에 설정하는 기본값, 로우를 설정할때 해당컬럼에 값을주지않아도 자동으로 입력
ALTER TABLE 테이블 이름 MODIFY 열이름 데이터타입 [DEFAULT 값];
ALTER TABLE sutdent MODIFY major INT not null DEFAULT 101;
'내일배움캠프 > 공부정리' 카테고리의 다른 글
| Entity 와 Persistence Context (영속성 컨텍스트) (1) | 2025.02.04 |
|---|---|
| JDBC (+JdbcTemplate) (0) | 2025.02.04 |
| 3 Layer Architecture (0) | 2025.02.04 |
| Servlet 과 Dispacher Servlet (0) | 2025.02.04 |
| MVC 구조 (0) | 2025.02.04 |