728x90
- 테이블(Table)
-
실제 데이터들이 저장되는 공간
-
- 컬럼(Column) = 어트리뷰트(Attribute) = 속성 = 필드(Field)
-
테이블에 저장되는 항목 구분자 (세로줄)
- 컬럼의 갯수 = 차수
-
- 로우(Row) = 레코드(Record)= 투플(Tuple)
-
데이터가 입력/출력/삭제되는 최소단위 (가로줄)
- 투플의 갯수 = 카디널리티
-
- 도메인(Domain)
- Attribute 가 가질 수 있는 값의 집합
- 릴레이션(테이블)의 특징
- 속성은 단일 값을 가짐
- 각 속성의 값은 도메인에 정의된 값만을 가지며 그 값이 모두 단일 값이여야함
- ex) 도메인이 취미의 집합(운동,독서,산책,게임) 이라면 운동 또는 독서 하나의 값을 가질 수 있음ㅁㅁ
- 두개의 값을 가지고 싶다면 투플으 하나 더 만들어야 함
- 속성의 원자성
- 속성은 서로 다른 이름을 가짐
- 속성의 무 순서성
- 한 속성의 값은 모두 같은 도메인 값을 가짐
- 속성의 순서는 상관없음
- 투플의 순서는 상관없음
- 투플의 무 순서성
- 릴레이션 내의 중복된 투플은 허용되지 않음
- 투플의 유일성
- 속성은 단일 값을 가짐
- DDL
- 데이터 정의어
- 테이블이나 고나계의 구조를 생성하는데 사용
- CREATE , ALTER , DROP
- DML
- 데이터 조작어
- 테이블에 데이터를 검색,삽입,수정,삭제 하는데 사용
- SELECT, INSERT, DELETE, UPDATE
- DCL
- 데이터 제어어
- 데이터의 사용 권한을 관리하는데 사용
- GRANT, REVOKE
- 리눅스에서의 MariaDB설치
- yum install mariadb-server / rpm 을 사용하여 설치
- systemctl start mariadb
- 접속방법
- mysql -u root -p (최초 접속시에는 mysql -u root)
- 관리자계정 비밀번호 설정
- use mysql;
- update user set password=password('비밀번호') where user ='root';
- flush privileges; --> 변경된 권한정보(비밀번호)를 적용
- exit;
- 데이터베이스 생성
- create database 이름
- 데이터베이스 제거
- drop database 이름
- 데이터베이스 확인
- show databaases
- 데이터베이스 선택
- use 데이터 베이스
- DB 의 키
- 기본키
- primary key
- 여러 후보키 중 하라를 선정하여 대표로 삼는키
- 릴레이션 내 투플을 식별 할 수 있는 고유한 값을 가져야함
- NOT NULL 과 UNIQUE 값이 기본 설정
- 키값의 변동이 일어나지 않아야 함
- 릴레이션 내에서 기본키를 표현할 때는 _____ 을 사용해서 표현 --> 릴레이션이름 (속성1 , 속성2 , 속성3)
- 외래키
- 다른 릴레이션의 기본키를 참조하는 속성
- 다른 릴레이션의 기본키를 참조하여 관계 데이터 모델의 특징인 릴레이션간의 관계를 표현하는데 사용됨
- 참조 하는(외래키) 참조되는(기본키) 의 양쪽 릴레이션의 도메인은 서로 같아야함
- NULL, 중복 값이 허용됨
- 자기 자신의 기본키를 참조하는 외래키도 가능
- 외래키가 기본키의 일부가 될 수 있음
- 후보키
- 투플을 유일하게 식별할 수 있는 속성의 최소 집합
- 슈퍼키
- 투플을 유일하게 식별할 수 있는 하나의 속성 혹은 속성의 집합
- 기본키
- 테이블 생성과 제약조건 확인
- create table 테이블이름(조건,조건,조건) --> 테이블 생성
- drop table 테이블이름 --> 테이블 삭제
- desc 테이블이름 --> 제약 조건 확인
- 테이블에 데이터 입력
- insert into 테이블명('값', '값', 값);
- 숫자(int)는 '' 없이 사용
- 테이블에서 데이터 검색
- select * from 테이블이름 --> 테이블내 모든 투플 검색
- select * from 테이블이름 where 조건 --> 조건에 맞는 투플 검색
- % : 정규표현식에서의 * 역할 BETWEEN : 범위 내 검색 IN/NOT IN : 집합으로 검색가능
- AND, OR , NOT : 복합조건 IS NULL, IS NOT NULL
- 테이블에서 데이터 수정
- update 테이블명 set 속성명='값' where 조건
- 테이블에서 데이터 삭제
- delete from 테이블명 where '조건'
- 테이블 구조 변경
- alter table 테이블명 조건
- alter table 테이블명 add 속성명 데이터타입 제약조건 --> 속성 변경
- alter table 테이블명 modify 기존속성 새자료형 새제약조건 --> 타입 변경
- alter talbe 테이블명 name 새 테이블명 --> 테이블 이름변경
DCL