■DCL(Data Control Language) : 데이터 제어어 - GRANT : 권한 부여 - REVOKE : 권한 해제 -------------------------------------------------------- ■VIEW 기존의 테이블은 그대로 놔둔 채 필요한 컬럼들 및 새로운 컬럼을 만든 가상 테이블. 실제 데이터가 저장된 것은 아니지만 VIEW를 통해서 데이터를 관리할 수 있다. 주소를 참조하고 있다. 참조형, 기존 테이블(실제 데이터)은 참조, 주소는 공유함, 원본 데이터 수정 삭제 가능, RESULT 테이블로 짜집기해서 VIEW -독립성 : 다른 곳에서 접근하지 못하도록 하는 성질 -편리성 : 긴 쿼리문을 짧게 만드는 성질 -보안성 : 기존의 쿼리문이 보이지 않는다. CREATE..
같은 컬럼일 경우, BETWEEN : AND IN : OR 우선순위 : OR보다 AND가 먼저, AND보다 IN이 먼저 ■TCL(Transaction Control Language) : 트랜잭션 제어어 ■트랜잭션 하나의 서비스를 구현하기 위해서 작성했던 쿼리들의 묶음(쿼리가 하나일 수도 여러개 일수도 있음), 하나의 단위 하나의 작업 단위 여러 개의 SQL문의 묶음 1.COMMIT 모든 작업(트랜잭션)을 확정하는 명령어 2.ROLLBACK 이전 커밋 시점으로 되돌아가는 명령어 DDL 복구 안됨 : TRUNCATE, DROP DML 복구 됨 : DELETE TCL은 DML과 관련됨. AUTO >> 자동으로 커밋되도록 설정 ** TRUNCATE는 테이블 내용을 전체 삭제하므로, DELETE보다 빠르게 처리할..
무결성 데이터에 결함이 없어야 함. 데이터의 정확성, 일관성, 유효성이 유지되는 것. 정확성 : 데이터는 애매하지 않아야 한다. 일관성 : 각 사용자가 일관된 데이터를 볼 수 있도록 해야 한다. 유효성 : 데이터가 실제 존재하는 데이터여야 한다. 1.개체 무결성 개체는 하나의 테이블을 의미함 모든 테이블은 PK로 선택된 컬럼을 가져야 한다. 2.참조 무결성 두 테이블의 데이터가 항상 일관된 값을 가지도록 유지하는 것. 3.도메인 무결성 도메인은 컬럼. 컬럼의 무결성. 컬럼의 타입, NULL값의 허용 등에 대한 사항을 정의하고 올바른 데이터가 입력되었는 지를 확인하는 것. 모델링(기획) : 추상적인 주제를 DB에 맞게 설계하는 것. 어플리케이션 기획 안에 모델링이 포함되어 있음. 테이블을 짜야지 모델링 할..
■DB(Database) 데이터가 모여 있는 기지. 추상적인 용어. ■DBMS(Database Management System) DB를 관리할 수 있는 구체적인 시스템 오라클, 마리아DB, MySQL, MS-SQL, MongoDB, ... 오라클 : 대기업, 대규모 프로젝트, 비쌈, AS 엄청남, 괴물단체 MySQL : 무료, 첫째딸 마리아DB : 둘째딸, MySQL과 명령어 똑같음. MS-SQL : 오래된 프로젝트 MongoDB : single page application(spa) 채팅, SNS 많이 쓰임. 1등, 스키마가 없음(NO-SQL). 텍스트로 데이터 교환 회사가 커져서 스키마를 만듦 >> 몽구스 ■오라클 DBMS 버전 i : internet g : grid(실무에서 80%) c : clou..
■date, calendar date > 내부API(sql, util / 주로 util 사용) pattern -> (개발자들) 약속 (패키지 : dateTest) ■파일 입출력(Java Application 관점) 자바입장(관점)에서 보기 java -> txt : 출력 / txt -> java : 입력 ■Stream 데이터가 전송될 때 필요한 연결통로 (byte(0,1)로 변환해서) 출력 시 byte 변환 방식 -> encoding 방식 / 도착지에서 decoding encoding, UTF-8 전 세계에서 많이 사용 완성형(MS949), 조합형(효율적, UTF-8, 가변형) ■stream 개별처리(byte로 보냄) buffer 임시저장공간(일괄처리를 위한)(완성된 문자나 문자열을 보냄), stream ..
쓰레드가 동시에 있으면 제어할 수 없음. 하나하나의 쓰레드가 들어와야 제어권이 부여됨 멀티 쓰레드로 구현했는데 여러개가 있으면 오류 생김 >>하나씩 접근해야 해. 동기화! 내가 쓰레드를 제어하기 위해서 사용 wait을 쓰려면 동기화를 해야 함. 패턴 설계할 때 쓰는 거구나~ 내가 쓰는 코드는 다른 사람도 쓰니까~ 약속한 설계 방식이구나~ 싱글톤패턴 무조건 객체는 단 한 개, 그걸 돌려서 쓰자 다른 곳에서 생성자를 만들지 못하게 해줌. 객체는 무조건 한 개만 만들고 돌려 쓴다. 쓰레드가 멈췄을 때(join,wait,sleep) 쓰레드를 멈출 수 있다 멈추고 싶을 때 오류 걸려서 catch로 탈출한다. -------------------------------------------- Thread 종료 방법 1..
■프로그램 : 소스코드로 잘 짜여진 틀 : 실행되지 않은 상태. ■프로세스 : 실행된 프로그램. ■쓰레드 : 프로세스 처리 경로. 서버에 관련된 내용을 이해하기 위함 실무에서 잘 쓰진 않지만 알고는 있어야 : 프로세스 안에서 처리하는 경로의 갯수 ■단일 쓰레드(경로가 1개 / 비효율적), 멀티 쓰레드(경로가 여러 개) - 단일 쓰레드(싱글 쓰레드) 처리 경로를 한 개만 가지고 있기 때문에 직렬적이다. 동시에 많은 양을 처리하기 힘들기 때문에 상대적으로 비효율적이다.(하나씩 처리) 하지만 하나의 작업에 문제가 발생하더라도 다른 작업에는 영향을 끼치지 않는다.(각각의 작업이 독립적) 따라서 안정성이 보장되고 설계 시 멀티 쓰레드에 비해 쉽다. - 멀티 쓰레드(다중 쓰레드) 하나의 프로세스를 동시에 처리하는 ..
■자료구조 : 데이터 관리하고 저장하는 것. 의미 없던 데이터를 자료구조를 통과하면 하나의 정보가 됨. ArrayList : 여러 개 데이터가 들어올 때, index로 데이터 관리할 때 사용 Set : 집합 - 구현 클래스 HashSet 집합에서는 중복되는 원소를 포함할 수 없는 것처럼 HashSet이라는 자료구조는 중복되는 값을 무시한다. 저장된 값들은 인덱스가 없기 때문에 순서가 없다. 값의 유무 검사에 특화되어 있는 자료구조이고 해쉬코드로 유무 검사가 진행되고 속도가 상대적으로 좋다. 순서가 없어서 값을 가져올 수가 없음. 검사에 적합한 자료구조, contains() 특화, DBMS에서는 검색, 조회 빨라야 함 - 순서 부여 : iterator() 순서가 없는 객체에 순서를 부여하거나, 순서가 있어..