0. DML
DML은 Data Manipulation Language , 데이터 조작 언어입니다.
DML의 언어종류는 총 4가지 입니다.
- INSERT : 레코드 생성
- UPDATE : 레코드 수정
- DELETE : 레코드 삭제
- SELECT : 레코드 조회
- INSERT, UPDATE, DELETE 의 결과는 ‘정수’ 다
- SELECT 결과는 table 형태( result set, record set ) 이다.
- phonebook 테이블 생성
1. INSERT : 레코드 생성
특정 칼럼만 지정하는 방법
- ID 없이 생성되어도, AUTO-INCREMENT로 인해 ID 5로 나온다.
- NAME은 NULL을 허용하지 않아 Field 'name' doesn't have a default value라는 오류 문구가 나온다.
2. UPDATE : 레코드 수정
UPDATE [테이블이름] SET [컬럼이름] = [데이터], ... WHERE [조건식];
WHERE을 쓰지 않는다면 모든 칼럼에 수정
- id 4에 있는 이름인 jhon을 jesse로 수정한다.
- id 4의 이메일인 jjj@email.com이 jesse@naver.com으로 수정되고, 폰번호도 052)333- 4555 로 수정된다
- 10인 id 값이 없어도 오류가 나지는 않는다. 다만 0 rows affected(어떠한 행도 매칭되는것이 없다).
- id가 3이하인 1, 2, 3번에 각각 10을 더해 레코드 수정한다. (PRIMARY KEY로 인해 순차적으로 나온다.)
- null인 email에 'test@email.com'을 수정하고 싶다면, is null을 사용하여 수정한다.
3. DELETE : 레코드 삭제
DELETE FROM [테이블 이름] WHERE [조건식];
WHERE 조건식이 없을 경우, 테이블의 모든 레코드 데이터가 삭제됨
- id가 25보다 큰 레코드를 삭제한다
4. SELECT : 레코드 조회
SELECT [컬럼명 또는 표현식] FROM [테이블명, 뷰명] ;
- 모든 컬럼 조회
SELECT * FROM t_professor;
- 원하는 컬럼만 조회
SELECT name, position, pay FROM t_professor ;
- 컬럼 별칭(alias) 사용하여 출력
SELECT position 직위, pay 급여, name 이름 FROM t_professor;
별칭을 붙일때 띄어쓰는 단어를 쓰면 안된다. 만약 쓰고싶다면 " " 붙여 출력한다.
SELECT studno "학생 학번", name AS 이름, grade FROM t_student;
'DBMS' 카테고리의 다른 글
5. MySQL : DISTINCT, CONCAT, WHERE (0) | 2022.02.23 |
---|---|
4. DBeaver 설치 (0) | 2022.02.22 |
2. My SQL - DDL 기초 (0) | 2022.02.19 |
1. DBMS의 기본 (0) | 2022.02.19 |
0. DBMS 정의 및 설치 (0) | 2022.02.19 |