| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- 프론트엔드
- 정보처리기사실기 기본개념
- OPC-UA
- 스프링부트 단점
- 기술면접
- jvm구성요소
- 서버저장방식
- C#이론
- Blazor Web App
- 스프링부트 장점
- Service Worker
- spring spring boot 차이점 공통점
- C# CS
- SPA MPA 특징
- Blazor WebAssembly
- 스프링부트의 장단점
- nosql
- CS
- InteractiveServer
- SPA MPA
- C# Blazor
- Redundant Array of Independent
- REST API
- cs기술면접
- 스프링 스프링부트 차이점 공통점
- C# @rendermode
- SPA MPA 차이
- 컴퓨터과학
- c언어 정보처리기사
- C# InteractiveServer
- Today
- Total
담비의 개발블로그
국비지원교육 47일차(10주차&DB) 본문
데이터 정의어
- 데이터베이스 데이터를 보관하고 관리하기 위해 제공되는 여러 객체의 생성&변경&삭제 관련 기능을 수행한다.
CREATE
- 객체를 생성하는데 사용하는 명령어이다.
CREATE TABLE 소유계정.테이블 이름(
열1 이름 열1 자료형,
열2 이름 열2 자료형,
...
열N 이름 열N 자료형
);
예시
CREATE TABLE EMP_DDL(
EMPNO NUMVER(4),
ENAME VARCHAR(10)
);
테이블 이름 생성 규칙
1. 테이블 이름은 문자로 시작해야한다. (한글도 가능, 숫자로 시작 불가)
2. 테이블 이름은 30byte이하여야 한다.(영어는 30자, 한글은 15자)
3. 같은 사용자 소유의 테이블 이름은 중복될 수 없다.
4. 테이블 이름은 영문자, 숫자와 특수 문자 $, #, _ 를 사용할 수 있다.
5. SQL 키워드는 테이블 이름으로 사용할 수 없다.(SELECT, FROM등은 테이블 이름으로 사용 불가)
열 이름 생성 규칙
1. 열 이름은 문자로 시작해야 한다.
2. 열 이름은 30byte이하여야 한다.
3. 한 테이블의 열 이름은 중복될 수 없다.
4. 열 이름은 영문자, 숫자와 특수 문자 $, #, _ 를 사용할 수 있다.
5. SQL 키워드는 열 이름으로 사용할 수 없다.
기존 테이블 열 구조와 데이터를 복사하여 새 테이블 생성방법
CREATE TABLE 새 테이블이름
AS SELECT * FROM 기존 테이블 이름;
기존 테이블 열 구조와 일부 데이터를 복사하여 새 테이블 생성방법
CREATE TABLE 새 테이블이름
AS SELECT * FROM 기존 테이블 이름
WHERE 일부 데이터내용;
기존 테이블 열 구조만 복사하여 새 테이블 생성방법
CREATE TABLE 새 테이블이름
AS SELECT * FROM 기존 테이블 이름
WHERE 1 <> 1;
ALTER
- 이미 생성된 오라클 데이터베이스 객체를 변경할 때 사용한다.
ALTER ADD
- 추가할 열 이름과 자료형을 명시하면 테이블에 새 열을 추가할 수 있다.
ALTER TABLE 테이블이름
ADD 열이름 자료형;
RENAME
- 테이블의 열 이름을 변경할 수 있다.
ALTER TABLE 테이블이름
RENAME COLUMN 기존열이름 TO 바꿀열이름;
MODIFY
- 열의 자료형을 변경할 수 있다.
ALTER TABLE 테이블이름
MODIFY 열이름 바꿀자료형;
DROP
- 특정 열을 삭제한다.
ALTER TABLE 테이블이름
DROP COLUMN 열이름;
RENAME(테이블)
- 테이블 이름을 변경할 수 있다.
RENAME 기존 테이블 이름 TO 변경할 테이블 이름;
TRUNCATE
- 특정 테이블의 모든 데이터를 삭제한다.
- ROLLBACK이 되지 않는다. (DELETE와 다른점)
TRUNCATE TABLE 테이블 이름;
DROP
- 데이터베이스 객체를 삭제한다.
DROP TABLE 테이블이름;
INSERT문
- 테이블에 데이터를 추가하는데 사용한다.
INSERT INTO 테이블이름 (열1, 열2, ..., 열N)
VALUES (열 1에 들어갈 데이터, 열2에 들어갈 데이터, ... , 열N에 들어갈 데이터);
INSERT 문에서 NULL입력법
INSERT INTO 테이블 이름(열1, 열2, 열3)
VALUES (70, 80, NULL);
이런식으로 사용이 가능하다.
INSERT문에서 서브쿼리를 사용할 때 유의할 점
1. VALUES절은 사용하지 않는다.
2. 데이터가 추가되는 테이블의 열 개수와 서브쿼리의 열 개수가 일치해야 한다.
3. 데이터가 추가되는 테이블의 자료형과 서브쿼리의 자료형이 일치해야 한다.
번외)MERGE문을 사용하면 같은 열 구조를 가지는 여러 테이블 또는 서브쿼리의 결과 데이터를 한 테이블에 병합하여 추가할 수도 있다.
UPDATE
- 테이블에 저장되어있는 데이터 내용을 수정할때 사용한다.
- 수정한 내용을 되돌리고 싶을때는 ROLLBACK; 을 사용한다.
- 데이터 일부분만 수정을 원한다면 WHERE문을 쓴다.
- WHERE절을 먼저 확인하고 UPDATE문을 실행한다면 보다 많은 오류를 줄일 수 있다.
UPDATE [변경할 테이블]
SET [변경할 열1] = [데이터], [변경할 열2] = [데이터], ... , [변경할 열N] = [데이터]
[WHERE 데이터를 변경할 대상 행을 선별하기 위한 조건];
DELETE
- 테이블에 있는 데이터를 삭제할 때 사용한다.
DELETE FROM 테이블이름
WHERE 삭제할 대상 행을 선별하기 위한 조건식;
트랜잭션
- 하나의 트랜잭션 내에 있는 여러 명령어를 한 번에 수행하여 작업을 완료하거나 아예 모두 수행하지 않는 상태이다.- 트랜잭션을 취소하고 싶다면 ROLLBACK명령어를 사용한다.- 트랜잭션을 영원히 반영하고 싶다면 COMMIT명령어를 사용한다.
세션
- 데이터베이스 접속을 시작으로 여러 데이터베이스에서 관련 작업을 수행한 후 접속을 종료하기까지 전체 기간을 의미한다.
LOCK
- 조작 중인 데이터를 다른 세션은 조작할 수 없도록 접근을 보류시키는 것을 뜻한다.
'국비교육' 카테고리의 다른 글
| 국비지원교육 49일차(10주차&DB-ERD, 정규형) (0) | 2024.01.22 |
|---|---|
| 국비지원교육 48일차(10주차&DB) (0) | 2024.01.19 |
| 국비지원교육 46일차(10주차&DB) (0) | 2024.01.17 |
| 국비지원교육 45일차(9주차&DB) (0) | 2024.01.16 |
| 국비지원교육 44일차(9주차&DB) (0) | 2024.01.15 |
