SQLD 3-3 ] DML (DATA MANIPULATION LANGUAGE)
❏ INSERT
- 테이블에 데이터를 입력.
INSERT INTO 테이블명 (COLUMN_LIST)
VALUES (COLUMN_LIST 에 넣을 VALUE_LIST);
INSERT INTO 테이블명
VALUES (전체 COLUMN에 넣을 VALUE_LIST);
첫번째 꺼는 칼럼 하나 하나 선택해서 값을 넣는거
두번째 꺼는 전체에 순서대로 값을 넣는거
정의되지 않은 컬럼은 디폴트로 NULL 이 지정된다.
값에는 ' ' 로 문자를 써야하고, 숫자는 그냥 ' ' 없이 숫자만 쓴다.
❏ UPDATE
- 칼럼 내용 수정.
UPDATE 테이블명
SET 칼럼명 = 바뀔 값;
한 컬럼 세로로 쭉.. 다 수정된다
UPDATE PLAYER
SET BACK_NO = 99;
하면. 플레이어 테이블에 있는 BACK_NO 칼럼의 전체의 값들이 99로 바뀜 일괄적으로.
❏ DELETE
- 테이블 내용 삭제.
DELETE (FROM) 테이블명;
FROM 은 생략해도 되는부분.
그냥 저렇게만 쓰면 테이블의 전체 데이터가 삭제된다.
뼈대는 남아있고, 행 들만 모두 삭제된다.
where 조건을 걸면 조건에 맞는 행(가로) 만 삭제가능.
그렇다면 앞에서 TRUNCATE TABLE 을 해도 방금 위와 같은
똑같은 결과를 얻는다. 그럼 무슨차이일까
DDL → 데이터베이스 테이블에 직접적인 영향을 미치기 때문에 SQL문 쓰면 바로 COMMIT 된다.
DML → 조작하려는 테이블을 메모리 버퍼에 올려 놓고 작업을 해서. 실시간으로 DB 에 영향을미치는건 아니다!
우리가 insert into 하고 select 로 확인하고 했던것들은 다 버퍼에서 놀아나는거였어!!
실제로 반영시키려면 COMMIT; 쳐서 적용시켜야한다. (ORACLE 만.. SQL SERVER 은 DML도 COMMIT 됨!)
그리고 조금 더 가서 테이블 내용 어짜피 다 지울꺼면 DELETE 보다, TRUNCATE TABLE 을 쓰자.
단. ROLLBACK 이 안되므로 주의해야하고.
❏ SELECT
- 조회하는거.
SELECT (ALL/DISTINCT) 칼럼명, 칼럼명, ....
FROM 테이블명;
ALL : 보통 생략한다. 중복된 데이터 까지 모두 출력한다.
DISTINCT : 중복된 데이터가 있을 경우 1건 으로만 나오게 하는옵션.
❏ SELECT PLAYER_ID, PLAYER_NAME FROM PLAYER;
- PLAYER 테이블에서 PLAYER_ID 와 PLAYER_NAME 칼럼의 내용들을 표시해주세요!!
❏ WILDCARD 는 * 이라고 해서, 모든 칼럼들을 보고싶을 때 쓴다.
- SELECT * FROM PLAYER;
PLAYER 테이블에 있는 모든 칼럼의 내용을 표시해주세요!
❏ ALIAS
- 별명 붙이기. 무슨 별명이냐면 표시할때 칼럼의 이름 대신 원하는 이름으로 표시할수 있다
SELECT PLAYER_NAME as 선수명, HEIGHT as 키 FROM PLAYER;
하면. 표시할때 원래 PLAYER_NAME 이런 칼럼명 대신 선수명 이라고 뜬다.
근데 as 는 생략 가능하다. 그리고 as 옆에 쓰고싶은 이름 쓸때 공백이 들어가면 " "
로 묶어준다. 저 위에는 공백이 없는 선수명, 키 이런거인데 만약 선수 이름 같은거면
"선수 이름" 이렇게.
❏ 산술연산자
- NUMBER 와 DATE 자료형에서만 되는거!
뭐냐면. 일반적으로 수학 4칙연산 정도 할수 있게 한다.
() , * , / , + , -
❏ 합성연산자
- 문자와 문자를 연결 해준다. || 로 연결해주고. (SQL은 +)
칼럼과 문자 또는 다른 칼럼과 연결해준다. 그 이어진 결과들로 새로운 칼럼 하나로 표시한다.
이렇게. 체격정보 라는 as 는 생략했지만.. 하나의 컬럼으로 표시해주고
안에 데이터 값들은 저렇게 연달아 표시할 수 있다.
댓글
이 글 공유하기
다른 글
-
SQLD 3-5 ] WHERE
SQLD 3-5 ] WHERE
2016.02.22 -
SQLD 3-4 ] TCL (TRANSACTION CONTROL LANGUAGE)
SQLD 3-4 ] TCL (TRANSACTION CONTROL LANGUAGE)
2016.02.22 -
SQLD 3-2 ] DDL (DATA DEFINITION LANGUAGE)
SQLD 3-2 ] DDL (DATA DEFINITION LANGUAGE)
2016.02.18 -
SQLD 3-1 ] 관계형 데이터베이스 개요
SQLD 3-1 ] 관계형 데이터베이스 개요
2016.02.18