일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- network
- 알고리즘
- 안드로이드
- 그레이들
- DFS
- BFS
- LeetCode
- 동적 계획법
- frontend
- Redux
- DP
- 리트코드
- 자바
- vscode
- TypeScript
- react
- 다이나믹 프로그래밍
- Python
- Data Structure
- Database
- Javascript
- 프로그래머스
- Graph
- Algorithm
- CS
- db
- 백준
- java
- VIM
- git
- Today
- Total
목록Computer Science/Database (11)
늘 겸손하게
SQL Injection 해커에 의해 조작된 SQL 쿼리문이 데이터베이스에 그대로 전달되어 비정상적 명령을 실행시키는 공격 기법 공격 방법 1) 인증 우회 보통 로그인을 할 때, 아이디와 비밀번호를 Input창에 입력하게 되는데, 비밀번호를 입력함과 동시에 다른 쿼리문을 함께 입력하는 것. 보안이 완벽하지 않은 경우, 같이 입력(주입)된 쿼리문이 데이터베이스에 영향을 줄 수도 있다. 2) 데이터 노출 시스템에서 발생하는 에러 메시지를 이용해 공격하는 방법. 보통 에러는 개발자가 버그를 수정하는 면에서 도움을 받을 수 있는 존재. 해커들은 이를 역이용해 악의적인 구문을 삽입하여 에러를 유발시킨다. 방어 방법 1) input 값을 받을 때, 특수문자 여부 검사하기 로그인 전, 검증 로직을 추가하여 미리 설정..
JOIN 두 개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법 테이블을 연결하려면, 적어도 하나의 칼럼을 서로 공유하고 있어야 하므로 이를 이용하여 데이터 검색에 활용한다. JOIN 종류 INNER JOIN LEFT OUTER JOIN RIGHT OUTER JOIN FULL OUTER JOIN CROSS JOIN SELF JOIN INNER JOIN : 교집합으로, 기준 테이블과 join 테이블의 중복된 값을 보여준다. LEFT OUTER JOIN : 기준테이블값과 조인테이블과 중복된 값을 보여준다. 왼쪽테이블 기준으로 JOIN을 한다고 생각하면 편하다. RIGHT OUTER JOIN : LEFT OUTER JOIN과는 반대로 오른쪽 테이블 기준으로 JOIN하는 것이다. FULL OUT..

[ Key ] 검색, 정렬 시 Tuple을 구분할 수 있는 기준이 되는 Attribute 테이블 간의 관계를 조금 더 명확히 하게 테이블 자체의 인덱스를 위해 설정된 장치 기본키, 외래키, 후보키, 슈퍼키, 대체키가 있습니다. 슈퍼키 하위에 후보키가 존재하고 후보키 하위에 기본키, 대체키가 존재함 슈퍼키는 유일성만 갖추고 후보키는 유일성, 최소성 모두 갖춘 키 입니다. 유일성 : 중복되는 값이 없음 최소성 : 필드 조합 없이 최소 필드만 써서 키를 형성 기본키 (Primary Key) 줄여서 PK, Primary Key라고도 부르며 테이블에서 PK는 중복되선 안됩니다. (유일성) 여러 개의 속성으로 이루어진 복합키 또한 존재 가능하나 복합키는 최소성을 만족하지 못합니다. 기본키는 자연키 혹은 인조키 중 ..