본문 바로가기
반응형

데이터베이스18

[데이터베이스] 권한과 권한 그룹(역할) Authorization / Privileges사용자는 데이터베이스의 특정 부분에 대해 여러 형태의 권한(authorization) 을 가질 수 있다.이러한 각각의 권한은 privilege(권한) 라고 불리며, 필요에 따라 모두, 일부, 혹은 전혀 부여하지 않을 수 있다.권한은 테이블(relation) 이나 뷰(view) 와 같은 데이터베이스의 특정 객체에 대해 설정할 수 있다. 주요 권한 종류권한 유형설명Read데이터를 읽을 수 있음. 수정은 불가능함Insert새로운 데이터를 삽입할 수 있음. 기존 데이터는 수정 불가능Update기존 데이터를 수정할 수 있음. 삭제는 불가능Delete데이터를 삭제할 수 있음권한 부여 방식사용자는 특정 테이블 또는 뷰에 대해 하나 이상의 권한을 부여받을 수 있음예: 어떤.. 2025. 4. 1.
[데이터베이스] 트랜잭션과 무결성 제약 조건, 도메인 Transactions트랜잭션: 하나의 작업 단위로 간주되는 질의 및/또는 갱신 명령문의 순서시작과 종료SQL에서는 명시적인 시작 없이 SQL 문이 실행되면 트랜잭션이 자동으로 시작됨트랜잭션은 아래 중 하나로 종료해야 함:COMMIT WORK: 변경 사항을 영구 반영ROLLBACK WORK: 수행된 변경 사항을 모두 취소트랜잭션 특성Atomic(원자성): 전부 수행되거나, 전혀 수행되지 않아야 함Isolation(격리성): 동시에 실행되는 다른 트랜잭션으로부터 독립적으로 수행(concurrent)Integrity Constraints(무결성 제약 조건)무결성 제약 조건은 데이터베이스 손상 방지를 위해 사용됨데이터 변경 시 일관성(consistency) 을 유지하도록 강제함예시 제약 조건당좌예금 계좌는 $.. 2025. 4. 1.
[데이터베이스] 뷰(View) 정의와 사용, 삽입 View Definition and Usewith로 만든 것도 뷰이지만, 쿼리 안에서만 유효하고, 쿼리가 끝나면 삭제된다. 뷰가 만들어지면 Db는 이 뷰를 저장할 것이고 마치 테이블 처럼 DB 어디서든 접근 할수 있고 권한 이슈도 해결 가능하다as operator를 꼭 써야된다. 뷰는 단지 반복되는 조회문을 치환한 것이기 때문에, as 연산자가 쓰인다.create view faculty asselect ID, name, dept_namefrom instructor뷰를 테이블처럼 이용해서 쿼리를 만들수 있다.select namefrom faculty where dept_name = 'Biology‘뷰 만들때 view attribute 이름도 명시할 수 있다.create view departments_tot.. 2025. 3. 26.
[데이터베이스] 조인 연산의 종류와 조건 Joined Relations조인 연산은 두 개의 관계(Relation)를 입력으로 받아 또 다른 관계를 결과로 반환하는 연산이다.두 개 이상의 테이블에서 관련된 열(Column)을 기준으로 행(Row)을 결합할 때 사용된다.일반적으로 FROM 절의 서브쿼리 표현식으로 활용된다.조인의 종류자연 조인(Natural Join)두 테이블에서 동일한 이름을 가진 속성을 기준으로 자동으로 조인한다.중복된 속성은 하나로 합쳐진다.내부 조인(Inner Join)조인 조건을 만족하는 행들만 결과로 반환한다.ON 절을 사용하여 특정 조건을 명시할 수 있다.외부 조인(Outer Join)한쪽 테이블에 매칭되는 데이터가 없어도 결과에 포함되도록 한다.세 가지 유형이 있다.왼쪽 외부 조인(Left Outer Join): 왼쪽.. 2025. 3. 26.
[데이터베이스] 기초 SQL (2) 이전글에서는 기초 SQL문을 소개했고, 마저 집계함수에 이어서 소개하겠습니다. 이전글https://konkukcodekat.tistory.com/213 [데이터베이스] 기초 SQL (1)기초 SQL 소개SQL Data-Definition Language (DDL)SQL은 각 릴레이션의 스키마(schema), 속성의 도메인(domain), 무결성 제약 조건(integrity constraints)을 정의할 수 있다.Domain Types in SQLchar(n): 고정된 크기의 문자열konkukcodekat.tistory.comAggregate Functions – Group Byselect dept_name, avg(salary) as avg_salaryfrom instructorgroup by dept.. 2025. 3. 22.
[데이터베이스] 기초 SQL (1) 기초 SQL 소개SQL Data-Definition Language (DDL)SQL은 각 릴레이션의 스키마(schema), 속성의 도메인(domain), 무결성 제약 조건(integrity constraints)을 정의할 수 있다.Domain Types in SQLchar(n): 고정된 크기의 문자열 (n 바이트)varchar(n): 최대 n 바이트의 가변 길이 문자열int, smallint: 정수형 데이터numeric(p,d): 소수점 이하 d자리까지 표현하는 숫자real, float(n): 실수형 데이터Create Table Construct테이블을 생성할 때 사용된다.CREATE TABLE r ( Ai Di, -- Ai: 속성 이름, Di: 데이터 타입 ...);Integrity Co.. 2025. 3. 16.
[데이터베이스] 관계 대수(Relational algebra)와 기본적인 SQL Relational Query Languages관계형 질의 언어는 구조적 질의 언어(SQL)와 동일한 표현력을 가지는 "순수"한 언어이다. 대표적으로 다음과 같은 관계형 질의 언어가 있다.관계 대수(Relational Algebra)튜플 관계 해석(Tuple Relational Calculus)도메인 관계 해석(Domain Relational Calculus)Relational Operators (관계 연산자)관계형 질의 언어는 6개의 기본 연산자를 사용하여 사용자의 질의를 표현한다.1. Selection of Tuples (σ, 선택 연산)주어진 조건을 만족하는 튜플만 선택한다.Relation r:예시: A=B이고 D > 5인 튜플 선택σ A=B and D > 5 (r) 2. Projection of .. 2025. 3. 12.