학습 기록 36

23.05.16 / DataBase / TCL, DCL

TCL 트랜잭션 제어어 (COMMIT, ROLLBACK, , ) 트랜잭션 : 데이터베이스의 상태를 변화시키기 위해서 수행하는 최소 수행 단위 *트랜잭션의 4가지 특성 1. 원자성(Automicity) : 모두 실행되거나 실행 안되거나 2. 일관성(Consistency) 3. 고립성(Isolation) 4. 지속성(Durability) COMMIT DB에 영구적으로 저장, 마지막 COMMIT 시점 이후의 트랜잭션 결과 저장 ROLLBACK 트랜잭션을 취소, 마지막 COMMIT 시점까지만 복구 DCL 데이터 제어어 (GRANT, REVOKE, ROLE) GRANT 권한 부여 GRANT CREATE SESSION TO DCLTEST; REVOKE 권한 회수 REVOKE CREATE SESSION FROM DC..

23.05.15 / DataBase / DML

DML 데이터 조작어 -> 데이터에 변형을 가함 INSERT, UPDATE, DELETE, , , INSERT 테이블에 새로운 데이터를 튜플(행) 단위로 입력 오류문장 확인! UPDATE 테이블에 저장된 데이터를 변경 UPDATE 직원 SET 직업ID = 'JAVA' WHERE 직원ID = 4; * WHERE로 조건 안걸어주면 모든 행의 ID가 JAVA로 바 DELETE 테이블의 데이터 삭제 DELETE FROM 직원 WHERE 직원ID = 1; 서브쿼리 * 이름이 Shelli인 직원보다 급여가 낮은 직원들 출력 SELECT FIRST_NAME, SALARY FROM EMPLOYEES WHERE SALARY < (SELECT SALARY FROM EMPLOYEES WHERE FIRST_NAME = 'Sh..

23.05.12 / Java / array

자료구조 논리적으로 설계된 데이터 구조 및 관계 배열 같은 타입 여러변수를 하나의 묶음으로 인덱스에 대응하는 데이터들로 이루어진 자료구조 * 배열인덱스 - 0부터 시작 자료형 변수명[] = new 자료형[크기] int arr[] = new int[5]; 배열에 값 지정 변수명[인덱스번호] = 원하는 arr[0] = 1; arr[1] = 2; arr[2] = 30; arr[3] = 23; arr[4] = 17; 배열의 값을 초기화와 동시에 생성 int arr[] = {1, 2, 30, 23, 17} 배열의 크기 arr.length * 예제 배열의 값중 가장 큰 값과 작은 값 출력 int[] intArray = { 2, 10, 3, 5, 56, 41, 7, 18, 94 }; int max = intArray..

학습 기록/Java 2023.05.12

23.05.10 / Java / 반복문(for문)

for문 예제) 2개의 정수 (base, n) 입력받아 base의 n제곱 출력 Scanner scan = new Scanner(System.in); System.out.print("base 입력 : "); int base = scan.nextInt(); System.out.print("정수n 입력 : "); int num1 = scan.nextInt(); int sum = 1; for (int i = 1; i < num1 + 1; i++) { sum *= base; } System.out.println(sum); * 결과창 base 입력 : 3 정수n 입력 : 4 81 예제) 구구단 2단 출력 int j = 2; for (int i = 1; i < 10; i++) { System.out.println(j..

학습 기록/Java 2023.05.10

23.05.10 / DataBase / DML

CREATE : 새로운 객체 생성 CREATE TABLE 테이블 생성 USER 계정 SEQUENCE 시퀀스 VIEW 뷰 * 테이블 생성 규칙 - 대소문자 구분X - 테이블명 중복X - 같은 테이블 내 컬럼명 중복X - 문자로 시작해야함, 예약어 사용 불가 TABLE CREATE TABLE 테이블명 ( 컬럼명 자료형(크기) 기본값 NULL여부 --기본값, NULL여부는 없을 시 안적음 CREATE TABLE 부서( 부서ID NUMBER(4) NOT NULL, 부서이름 VARCHAR2(30) NOT NULL, 매니저ID NUMBER(6), 지역ID NUMBER(4) ); 제약조건 * PK 식별자를 물리적 모델링한것 NOT NULL + UNIQUE = NULL 불가, 중복 불가 * UNIQUE KEY PK와 ..

23.05.09 / Java / 반복문

Random 랜덤 수 뽑기 import java.utill.Random; Random ran = new Random() 예제) 랜덤 두 수 뽑아 답 맞추기, 3번 실패하면 게임종료 Scanner scan = new Scanner(System.in); Random ran = new Random(); int count = 0; while (true) { int ran1 = ran.nextInt(15); int ran2 = ran.nextInt(15); System.out.println(ran1 + " + " + ran2 + " = "); int num = scan.nextInt(); if (num == (ran1 + ran2)) { System.out.println("Success!"); } else { S..

학습 기록/Java 2023.05.09

23.05.09 / DataBase / ORDER BY, JOIN

ORDER BY ORDER BY + 정렬(오름/내림차순) *오름차순, 내림차순 오름차순(ASC), 내림차순 (DESC) *출력엔 EMPLOYEE_ID 없이 SALARY만 나오지만 EMPLOYEE_ID 기준으로 정렬 된 상태 * GROUP BY로 그룹화 된경우 GROUP BY 컬럼으로만 정렬 가능 * 실행순서 GROUP BY -> SELECT -> ORDER BY * ORDER BY가 더 느리게 실행되기 때문에 먼저 GROUP BY로 묶어버린 다음엔 다른 칼럼으로 정렬 불가 별칭이나 숫자로도 정렬 가능 JOIN 필요한 데이터가 두 개 이상의 테이블에 나눠져 있을때 데이터를 합쳐서 가져올 때 사용 =FROM= SELECT 컬럼 FROM 테이블A 별칭, 테이블B 별칭 *별칭 사용 후 실행되는 절은 모두 별칭...

23.05.08 / Java / 반복문(while)

연산자 연산결과의 자료형으로 분류 연산자 6가지 산술, 비교, 대입, 논리, 증감, 삼항 숫자(정수/실수) - 산술 ex) int a = 3 + 4; 논리 - 비교, 논리 ex) boolean a = 3 == 4; ex) &&, || 결과값 없음 - 대입, 증감 반복문 while문 / do-while문 / for문 =while문= int i = 0; int sum = 0; while (i < 10) { i++; sum += i; } System.out.println(i); System.out.println(sum); *결과창 10 55 예제) 반복하여 정수 입력받다가 10보다 큰 수 입력시 종료되고 종료문구 출력 Scanner scan = new Scanner(System.in); while (true)..

학습 기록/Java 2023.05.08

23.05.08 / DataBase / GROUP BY, HAVING

1. GROUP BY 특정 칼럼을 기준으로 그룹화 할때 * 실제 출력되는 행의 개수가 감소 GROUP BY 보다 늦게 실행되는 (HAVING, OREDER BY, SELECT)절에서는 출력할수 있는 행 제한 but) 집계함수 (avg, max, min ,,)는 사용가능 * 다중행 함수 (집계함수) : 함수에 적용되는 행은 여러개, 결과값은 1개 ex) SUM(SALARY) : 1행 -> SALARY는 108행 단일행 함수(문자, 숫자, 날짜, , ,) : 함수에 적용되는 행 1개, 결과값 각 행에 대해 ex) UPPER, LOWER (예제) 성적표 테이블에서 학생별로 평균점수 출력 단, 소수점 1자리까지만 출력 * COUNT(컬럼), COUNT(*) COUNT(*) : NULL 포함해서 COUNT (예제..

23.05.04 / Java / 조건문(if문)

조건문 =if문= 예제) 각 과목 정답개수 int형 타입 변수 선언 한 과목이라도 8개 미만 -> 불합격 총 정답 수 60개 이상 합격 출력 Scanner scan = new Scanner(System.in); System.out.print("소프트웨어 설계 : "); int num1 = scan.nextInt(); System.out.print("소프트웨어 개발 : "); int num2 = scan.nextInt(); System.out.print("데이터베이스 구축 : "); int num3 = scan.nextInt(); System.out.print("프로그래밍 언어 활용 : "); int num4 = scan.nextInt(); System.out.print("정보시스템 구축관리 : "); i..

학습 기록/Java 2023.05.07