728x90
SQL(Structured Query Langauge)
- 관계 데이터베이스를 의한 표준 질의어
- 1974년 IBM연구소에서 데이터베이스 시스템, "시스템 R"을 질의하기 위해서 만들어진 구조화된 언어
SQL의 분류
데이터 정의어(DDL)
- 테이블을 생성하고 변경,제어하는 기능을 제공
- CREATE : 테이블 생성
- ALTER : 테이블 변경
- DROP : 테이블 삭제
데이터 조작어(DML)
- 테이블에 새 데이터를 삽입하거나, 테이블에 저장된 데이터를 수정,삭제,검색하는 기능을 제공
- SELECT : 데이터 검색 시 사용
- INSERT : 데이터 입력
- UPDATE : 데이터 수정
- DELETE : 데이터 삭제
데이터 제어어(DCL)
- 보안을 위해 데이터에 대한 접근 및 사용 권한을 사용자별로 부여하거나 취소하는 기능을 제공
테이블 생성 :CREATE TABEL 문
속성의 정의
- 테이블을 구성하는 각 속성의 데이터 타입을 선택한 다음 null 값 허용 여부와 기본값 필요 여부를 결정
- NOT NULL
- 속성이 널 값을 허용하지 않음을 의미하는 키워드
- 예) 고객아이디 VARCHAR(20) NOT NULL - DEFAULT
- 속성의 기본값을 지정하는 키워드
- 예) 적립금 INT DEFAULT 0
- 예) 담당자 VARCHAR(10) DEFAULT '김XX'
키의 정의
- PRIMARY KEY
- 기본키를 지정하는 키워드
- 예) PRIMARY KEY(고객아이디)
- 예) PRIMARY KEY(주문 고객, 주문제품) - UNIQUE
- 대체키를 지정하는 키워드
- 대체키로 지정되는 속성의 값은 유일성을 가지며 기본키와 달리 null값이 허용됨 - FOREIGN KEY
- 외래키를 지정하는 키워드
- 외래키가 어떤 테이블의 무슨 속성을 참조하는지 REFERENCES 키워드 다음에 제시
- 예) FOREIGN KEY(소속부서) REFERENCES 부서(부서 번호)
데이터 무결성 제약조건의 정의
- CEHCK
- 테이블에 정확하고 유효환 데이터를 유지하기 위해 특정 속성에 대한 제약조건을 지정
- 예) CHECK(재고량>=0 AND 재고량 <=10000)
테이블 변경 :ALTER TABLE 문
새로운 속성 추가 - ADD
- 예) ALTER TABLE 고객 ADD 가입날짜 DATE;
기존 속성 삭제 - DROP
- CASECADE : 삭제할 속성과 관련된 제약조건이나 참조하는 다른 속성을 함께 삭제
- RESTRICT : 삭제할 속성과 관련된 제약조건이나 참조하는 다른 속성이 존재하면 삭제 거부
테이블 제거 :DROP TABLE 문
- CASCADE : 제거할 테이블을 참조하는 다른 테이블도 함께 제거
- RESTRICT : 제거할 테이블을 참조하는 다른 테이블이 존재하면 제거 거부
'DB' 카테고리의 다른 글
DB Connection Pool (커넥션 풀) 개념부터 적절한 설정 방법까지 (feat. HikariCP & MySQL) (1) | 2024.02.26 |
---|---|
정규화(Normalization)!!!!!!!!!!!!!!!!!!!!! (1) | 2023.02.04 |
관계 데이터 모델의 기본 개념 (0) | 2023.02.04 |
데이터 베이스(DB) 설계 - 개념적 데이터 모델링 (0) | 2023.02.04 |
데이터 모델링을 ARABOZA (0) | 2023.02.04 |