프로세스와 쓰레드 프로세스 : 실행 중인 프로그램, 자원(resources)과 쓰레드로 구성 ->cpu,메모리... 쓰레드 : 프로세스 내에서 실제 작업을 수행, 모든 프로세스는 최소한 하나의 쓰레드를 가지고 있다. 쓰레드 종류 - 싱글 쓰레드, 멀티 쓰레드 멀티 쓰레드의 장단점 대부분의 프로그램은 멀티쓰레드로 작성되어 있다. 장점 : 시스템 자원을 보다 효율적으로 사용 가능, 사용자에 대한 응답성 향상, 작업이 분리되어 코드가 간결해 진다. 단점 : 동기화(synchronization)에 주의해야 한다, 교착 상태(dead-lock)가 발생하지 않도록 주의 필요, 각 쓰레드가 효율적으로 고르게 실행될 수 있게 해야 한다. 쓰레드의 구현과 실행 두 가지 방법이 있다. 1. Thread 클래스를 상속 cl..
데이터 사전이란? 오라클 데이터 베이스 테이블은 사용자 테이블(user table), 데이터 사전(data dictionary)으로 나뉜다. 사용자 테이블은 여러 SQL문에서 활용한 EMP, DEPT, SALGRADE 테이블, 데이터 사전은 데이터베이스를 구성하고 운영하는 데 필요한 모든 정보를 저장하는 특수한 테이블로 ->데이터베이스가 생성되는 시점에 자동으로 만들어진다. 오라클 데이터베이스는 사용자가 데이터 사전 정보에 직접 접근하거나 작업하는 것을 허용x. 대신 데이터 사전 뷰(data dictionarty view)를 제공하여 SELECT문으로 정보 열람을 할 수 있게 해두었다. 데이터 사전 접두어 총 네 가지 있지만 두 가지가 제일 중요하다고 하셨다. USER_XXXX : 현재 데이터베이스에 접..
트랜잭션이란? A계좌 -> B계좌로 100만원을 이체하려면 A계좌에서 -100(UPDATE -100 WHERE A계좌), B계좌에서 +100(UPDATE -+100 WHERE B계좌)이 함께 이루어져야 한다. 만약 A계좌에서 -100만 이루어지고 B계좌에 +100이 이루어지지 않으면 돈은 증발. ->계좌 이체라는 행위는 위에 두 UPDATE문이 완전히 실행되어야 완료되는 작업 단위이다. 트랜잭션이란 더 이상 분할할 수 없는 최수 수행 단위를 뜻하며 계좌 이체와 같이 하나의 작업 OR 밀첩하게 연관된 작업을 수행하기 위해 한 개 이상의 데이터 조작 명령어(DML)로 이루어진다. ALL OR NOTHING 문장으로 설명하기도 한다. 트랜잭션을 제어하기 위해 사용하는 명령어를 TCL(Transaction Co..
서브쿼리 서브쿼리는 SQL문을 실행하는 데 필요한 데이터를 추가로 조회하기 위해 SQL문 내부에서 사용하는 SELECT문을 의미한다. EX) 1. 서브쿼리는 연산자와 같은 비교 또는 조회 대상의 오른쪽에 놓이며 괄호로 묶어 사용한다. 2.특수 몇몇 경우를 제외한 대부분의 서브쿼리에서는 ORDER BY 절을 사용할 수 없다. 3.서브쿼리의 SELECT절에 명시한 열은 메인쿼리의 비교 대상과 같은 자료형과 같은 개수로 지정해야 한다. 4.서브쿼리에 있는 SELECT문의 결과 행 수는 함께 사용하는 메인쿼리의 연산자 종류와 호환 가능해야 한다. 예제 1. 전체 사원 중 ALLEN과 같은 직책(JOB)인 사원들의 사원 정보, 부서 정보를 출력하는 SQL문을 작성하세요. 2. 전체 사원의 평균 급여(SAL)보다 ..
조인 조인(join)은 두 개 이상의 테이블을 연결하여 하나의 테이블처럼 출력할 때 사용하는 방식이다. 조인 조건 없이 조인을 사용하면 어떤 데이터끼리 연결해야 할지 모르니까 전부 다 종류별로 조합해서 붙여주고 생각보다 많은 데이터가 출력된다. -> 조인 조건이 필요하다. DEPT 테이블과 EMP 테이블에 공통적으로 겹치는 컬럼은 DEPTNO -> WHERE 조건식이 조인 방식의 정확한 데이터 매치를 위한 기준이 될 때 조인 조건식이라고 한다. 프로그래밍 언어 중 .(콤마)은 소유의 의미. EMP.DEPTNO = DEPT.DEPTNO -> EMP 테이블 소유의 DEPTNO 컬럼값 = DEPT 테이블 소유의 DEPTNO 컬럼값 아까보다 간략하게 나온다. 조인 종류 -등가 조인 테이블을 연결한 후에 출력 행..
UPPER,LOWER,INITCAP UPPER(문자열) : 괄호 안 문자 데이터를 모두 대문자로 변환하여 반환 LOWER(문자열):괄호 안 문자 데이터를 모두 소문자로 변환하여 반환 INITCAP(문자열):첫 글자는 대문자로, 나머지 문자를 소문자로 변환하여 반환 EX) SELECT ENAME, UPPER(ENAME), LOWER(ENAME), INITCAP(ENAME) FROM EMP; LENGTH 함수 특정 문자열의 길이를 구할 때 사용★★★★★ EX) SELECT ENAME,LENGTH(ENAME) FROM EMP; SUBSTR 함수 출처 입력 주민등록번호 중 생년월일 앞자리만 필요하거나 전화번호의 마지막 네 자리 숫자만 추출하는 경우와 같이 문자열 중 일부를 추출할 때 사용 EX) SELECT J..
데이터와 정보 데이터 : 어떤 필요에 의해 수집했지만 아직 특정 목적을 위해 평가하거나 정제하지 않은 값이나 사실 또는 자료 자체. 정보 : 수집한 데이터를 어떠한 목적을 위해 분석하거나 가공하여 가치를 추가하거나 새로운 의미를 이끌어 낼 수 있는 결과. -> 잘 수집된 데이터를 가공하고 분석하면 새로운 가치를 만들어 낼 수 있는 정보를 얻을 수 있다! 관계형 데이터 베이스의 구성 요소 *테이블 : 표 형태의 데이터 저장 공간 *행 : 가로줄 (데이터 뭉덩이, 로) *열 : 세로줄 (구성하는 데이터 특징, 칼럼) 열, 키 키(key) : 하나의 테이블을 구성하는 여러 열 중에 특별한 의미를 지닌 하나 또는 여러 열의 조합. -기본키 : 한 테이블 내에서 중복되지 않는 값만 가질 수 있는 키 ex)주민등록..
다형성(polymorphism) =여러가지 타입(데이터 타입)의 특성 =>특정한 변수가 여러가지 데이터 타입을 저장하고 사용 부모 클래스 타입의 참조 변수로 자식 클래스의 인스턴스 참조가 가능하다. -상대적으로 더 작은 데이터 타입의 데이터가 상대적으로 더 큰 데이터 타입의 변수에 들어가는 것은 문제가X (암시적 형변환) -부모 클래스는 항상 자식 클래스보다 큰 데이터 타입이다. ex) Child myChild = new Child(); Parent myParent = my Child(); => Parents > Child Parent my Parent = new Parent(); = new Child(); Object obj = new Parent(); = new Child(); = new Grandc..