Database

· Database
like 구분에 사용되는 특수문자 두개 : %, _ '%' = like 구분 특정 문자열 위치에 부합하는 길이 상관 없는 모든 문자열 -- employees 테이블에서 first_name이 'P'로 시작하는 모든 사람을 찾아 주시오 select * from employees where first_name like 'P%' -- employees 테이블에서 first_name이 'p'로 끝나는 모든 사람을 찾아 주시오 select * from employees e2 where first_name like '%p' -- employees 테이블에서 first_name에 'ur'이 들어가는 모든 사람을 찾아 주시오 select * from employees e3 where first_name like '%ur..
· Database
RDBMS 데이터의 저장공간 2가지로 나뉨 COMMIT OR ROLLBACK 임시 저장공간 -> 확정된 저장공간 이유 : 실제 프로젝트상 웹 어플리케이션 한개의 기능을 수행할 때 복수 개의 update, delete, insert 쿼리를 수행해야 할 때가 있다 웹 어플리케이션 개발의 가장 기본 항상 단위 기능이 실패 했을 때를 염두에 둬야한다. 단위 기능 하나에 쿼리를 두번 이상 수행해야 할 경우 예) user테이블 업데이트(sql), 비번변경시각 테이블 업데이트(sql) 트랜잭션(상호 작용) 데이터 처리의 한 단위 한 개의 쿼리 실행작업 TCL(COMMIT,ROLLBACK,SAVEPOINT) 트랜잭션 사용 이유 : 데이터의 일관성을 유지하면서 안정적으로 데이터를 복구하기 위해서 ex) jsp 웹 어플리..
· Database
1. varchar, char의 차이 CHAR 고정형 문자열 (255자) CHAR(10)으로 선언하면 study라는 5자 짜리 문자열을 넣으면 남는 공간은 5개의 공백으로 채워진다 VARCHAR 가변형 문자열 (1~65535바이트 문자 수) VARCHAR(10)으로 선언하고 study라는 5자 짜리 문자열을 삽입하면 5byte+1byte(길이를 저장하기위한 메모리) = 6byte가 소모된다 2. 집계 쿼리(group by) -- grouping 해서 나눌수 있는 기준 컬럼을 가지고 여러가지 쿼리를 수행함 COUNT(행 갯수 구하기) SELECT COUNT(*) FROM 테이블명 [WHERE 열명=조건] SELECT COUNT(열명), COUNT(열명2) FROM 테이블명 DISTINCT(중복 제거하기) ..
· Database
Employees 데이터베이스를 이용 1. dept_emp 테이블에서 성별(gender)가 M인 모든 직원을 출력 2. dep_emp 테이블에서 생일이 1950년도부터 1960년까지인 모든 직원 출력하시오 3. employees 테이블에서 성별(gender)이 F이고 생일이 1950년부터 1960년까지인 모든 직원을 lastName의 내림차순으로 출력 하시오. 4. employees 테이블과 salaries 테이블을 join 하여 아래 컬럼대로 출력 하시오 -- birth_date | first_name | last_name | gender | hire_date | salary 5. employees 테이블과 titles 테이블을 join 하여 아래 컬럼대로 출력 하시오 -- birth_date | fi..
· Database
Equi Join 가장 많이 사용하는 조인문 입니다.(특히 기본 사용법 과 INNER JOIN) 조인 조건이 정확히 일치하는 경우에 사용합니다. (PK(기본키) 와 FK(외래키) 를 사용한 조인) 조인 조건에 ' = ' 를 이용하는 조인을 보통 등가 조인(Equi-join)이라 합니다. 출처: https://mine-it-record.tistory.com/70 [나만의 기록들] 아래의 테이블을 이용하여 Equi Join 실습 ex1) 로그인 아이디, 닉네임, 휴대폰번호, 이메일 , 본명 조회 ex2) 로그인 아이디, 닉네임, 글 컨텐츠, 조회수 , 생성시간 조회 ex3) 게시글 id, 글컨텐츠, 조회수, 생성시간, 로그인아이디,닉네임, 휴대폰번호, 이메일 , 본명
· Database
1. eXERD에 테이블 생성한 후 포워드 엔지니어링을 통한 DDL을 사용해 DBeaver에서 테이블 생성 2. 식별관계 2.1 user 테이블에 uid=1인 row가 있다 2.2 userprivateinfo 테이블에 uid=1인 row 삽입 => user 테이블에 uid=1인 row가 있기때문에 삽입 가능 2.3 userprivateinfo 테이블에 uid=2인 row 삽입할 수 없다 => user 테이블에 uid=2인 row가 없기때문에 삽입할 수 없다 => user 테이블에 uid=2인 row를 삽입한 후 userprivateinfo 테이블에 uid=2인 row 삽입 가능 2.4 user 테이블에 uid=1인 row를 삭제할 수 없다 => userprivateinfo 테이블에 uid=1인 row가 ..
· Database
1. eXERD에 테이블 생성한 후 포워드 엔지니어링을 통한 DDL을 사용해 DBeaver에서 테이블 생성 2. 비식별관계 2.1 user 테이블에 uid=1인 row가 있다 2.2 user 테이블에 uid가 1인 row가 있어 board 테이블에 uid가 1인 row 삽입 2.2 board 테이블에 uid가 2인 row를 삽입할수 없다 => user 테이블에 uid가 2인 row가 없어서 에러가 발생한다 => user 테이블에 uid가 2인 row를 삽입하면 board 테이블에 uid가 2인 row를 삽입할 수 있다 2.3 user 테이블에 uid가 1인 row를 삭제할 수 없다 => board 테이블에 uid가 1인 row가 있기 때문에 에러가 발생 => board 테이블에 uid가 1인 row를 먼..
· Database
1. 개념정리 1.1 Primary key(기본키) 행을 고유하게 구분해주는 최소의 정보 다른 항목과 중복되는 값을 가질 수 없다 null 값을 가질 수 없다 모든 테이블에는 기본키가 있어야하며, 하나의 기본키만 가질 수 있다 1.2 Foreign key(외래키) 행을 고유하게 구분해주는 최소의 정보 다른 항목과 중복되는 값을 가질 수 없다 null 값을 가질 수 없다 모든 테이블에는 기본키가 있어야하며, 하나의 기본키만 가질 수 있다 1.3 INT/LONG 선택의 기준 Long 형은 8byte로 Int형 4byte로 저장할 데이터의 크기를 생각해서 선택한다 Long형이 훨씬 많은 데이터를 저장할 수 있다고 무조건적으로 선택하면 저장공간의 낭비가 될 수 있다. 1.4 데이터타입과 바이트 byte : 1 ..
BSYeop
'Database' 카테고리의 글 목록