728x90
- 여러 개의 칼럼을 ALTER COLUMN으로 동시에 수정하는 구문은 지원하지 않는다
- 트랜젝션의 특징 - 원자성, 일관성, 고립성, 영속성
- 일관성 : 트랜젝션 이전에 데이터베이스 내용이 잘못되지 않았다면, 이후에도 잘못되지 않아야 함
- 외래키는 null 값을 가질 수 있다.
update
set a.sal = b.sal - 500
where a.job = 'clerk'
delete
where a.sal < 2000
-- Step 1: Update salaries
UPDATE a
SET sal = b.sal - 500
FROM b
WHERE a.job = 'clerk'
-- Step 2: Delete rows with salary < 2000
DELETE FROM a
WHERE sal < 2000;
이렇게 해석된다.
- UNIQUE로 설정되면 후보키
- ALTER TABLE 테이블명 [DROP/ADD 등등] COLUMN 칼럼명;
- 표준 데이터 타입 - Char, Varchar2, Number
- Delete/ Modify Action
- Cascade : Master 삭제 시 child도 같이 삭제
- Set Null : Master 삭제시 child 해당 필드 Null
- Set Default : Master 삭제 시 child 해당 필드 Default 값으로 설정
- Restrict : Child 테이블에 PK 값이 없는 경우만 Master 삭제 허용 - child가 없어야 함
- Insert Action
- Automatic : Master PK가 없는 경우 만든 다음에 child 입력
- Set Null : Master PK가 없는 경우 Child 외부키를 Null로 설정
- Set Default : Master PK가 없는 경우 Child 외부키를 지정된 기본값으로 입력
- Dependent : Master 테이블에 PK가 존재할 때만 Child 입력 허용
- No Action : 참조무결성을 위반하는 입력 액션을 취하지 않음
- 삽입 칼럼을 명시하지 않았을 경우 모든 칼럼을 삽입해야 한다.
- Date 타입에 숫자값은 입력하지 못하고 에러를 발생시킨다.
- 산술 연산자 우선순위 - (), *, /, +, -
- DROP - rollback 불가능, 테이블 정의 자체를 완전히 삭제
- TRUNCATE - rollback 불가능, 테이블을 최초 생성된 초기상태로 만듦
- DELETE - Commit 이전 Rollback 가능, 데이터만 삭제
- 오라클에서는 DDL 문장 수행 후 자동 COMMIT, sql server는 안 그럼
- TOP(3) WITH TIES 팀명 - 승리건수가 동일한 팀이 있다면 함께 출력
728x90
'데이터베이스' 카테고리의 다른 글
SQLD 제 2과목 - 제 2장 SQL 활용 (0) | 2024.11.17 |
---|---|
SQLD 제 2과목 - 제 1장 SQL 기본 (0) | 2024.11.16 |
SQLD 제 1과목 오답노트 (2) | 2024.11.15 |
PlanetScale & Prisma Database Setup (0) | 2023.08.17 |