분류 전체보기 126

(JDBC)를 활용한 프로그램 만들어 보기 - 3

요구 사항 더보기DAY 1 : 설정 및 설계-활동 : -GitHub 리포지토리 생성, 브랜치 전약 수립(main , dev, feature/*)-MySQL 데이터베이스 및 테이블 생성.역할 분담 : DTO와 DAO 초기 설계. 성과물 : 리포지토리, DB 스키마 , ERD 다이어그램 Day 2. DAO 및 DTO 구현활동- Book , Student , Borrow DTO 작성 (Lombok 사용)-DAO 클래스 구현 (bookDAO, StudentDAO, BorrowDAO)-기본 CRUD 기능 테스트성과물 : DTO, DAO 코드, Git 커밋 Day 3 : Service 및 View 구현활동-LibraryService 에서 비즈니스 로직 구현-LibraryView 로 콘솔 UI 구현-기능 통합 및 버..

DB의 접근기술 2025.05.19

(JAVA DB) JDBC CRUD 연습 - 2

JDBC를 사용한 카페 메뉴 관리 시스템 학습 목표- JDBC를 사용한 CRUD 작업 (INSERT, UPDATE, DELETE, SELECT) 복습,- 메서드 분리를 통한 코드 구조화- Scanner를 사용한 사용자 입력 처리.-데이터베이스 연결 및 예외 처리. -- 메뉴 테이블 만들기create table menu(id int primary key auto_increment, name varchar(50), price int, category varchar(20) ); package ch04;import java.sql.*;import java.util.Scanner;/** * JDBC 연습, 메서드 분리 하는 방법, 활용 */public class CafeMenuManager {..

DB의 접근기술 2025.05.19

(DB) SQL 쿼리의 일반적인 처리 순서 - 23

SQL 쿼리 실행 순서 SQL 쿼리는 작성 순서와 실행 순서가 다릅니다. 아래는 쿼리가 실제로 처리되는 논리적 실행 순서입니다. 각 절의 역활과 처리 방식을 자세히 설명합니다.1. FROM 절-쿼리의 첫 단계로, 데이터를 가져올 테이블 ( 또는 뷰)을 지정합니다. 여러 테이블을 사용할 경우 , 조인(JOIN)을통해 결합 방식을 정의합니다. 이 단계에서 모든 행과 열을 포함하는 가상 테이블이 생성됩니다. 2. ON 절-조인(JOIN)이 사용될 때, 테이블 간의 결합 조건을 정의합니다. 예를 들어 , 두 데이블의 특정 열 값이 일치해야 결합되도록 조건을 설정합니다. 이 절은 조인된 행을 결정합니다. 3. JOIN - from 절에서 지정된 테이블들을 ON 절의 조건에 따라 결합합니다. INNER J..

MySQL 2025.05.16

(GB) GROUP BY 와 HAVING 절 - 22

더보기1.GROUP BY 절이란GROUP BY 절은 SQL에서 특정 열의 값에 따라 행 집합을 요약된 그룹으로 나누는데 사용됩니다.주로 집계 함수(SUM, AVG , MAX, MIN , COUNT 등)와 함께 사용되어 각 그룹에 대한 요약 정보를 제공합니다.특징- 데이터를 원하는 그룹으로 나눌 수 있음.-그룹화할 컬럼명을 SELECT 절과 GROUP BY절에 추가.집계 함수와 함께 사용되는 상수는 GROUP BY 절에 포함하지 않아도 됨- 주의 : 비집계 컬럼은 GROUP BY 포함해야 하며, MySQL의 ONLY_FULL_GROUP_BY 모드에서 이를 위반하면 오류 발생 예시 select class, AVG(score) AS AveragescoreFROM tb_studentGROUP BY clas..

MySQL 2025.05.16

(DB) MySQL ANSI SQL 표준과 주요 함수 - 21

ANSL SQL 표준이란?ANSL (미국구가표준협회,American National Standreds Institute)는 데이터베이스 관리 시스템(DBMS)의 호환성, 일관성 , 이식성을 보장하기 위해 SQL(Strctured Query Language) 표준을 정의합니다.ANSL SQL 은 SQL: 1992, SQL: 1999 , SQL: 2011, SQL: 2016등 버전으로 발전하며, 각 버전은 윈도우 함수,JSON 지원 등 새로운 기능을 추가했습니다. 주요 목표 :호환성 : 다양한 DBMS 간 쿼리 호환성 보장.일관성 : SQL 문법과 기능의 일관된 사용 제공.이식성 : SQL 코드의 DBMS간 이식서 향상.-------------------------------------------------..

카테고리 없음 2025.05.16

(DB) 테이블 복사 및 데이터 추가 - 20

데이터베이스에서 한 테이블의 구조나 데이터를 다른 테이블로 복사하는 작업은 여러 상황에서 유용하게 사용됩니다테이블의 구조만을 복사하거나. 구조와 테이터 모두를 복사할 수 있습니다. 1.테이블 구조만 복사하기 더보기테이블의 구조만을 새로운 테이블로 복사하고자 할 때, 데이터는 복사하지 않고 구조만 생성합니다.create table 새_테이블as select * from 기존_테이블 where 1=0;-- as 는 create table 과 secelt 사이를 연결하는 역활을 합니다.-- 즉, select 쿼리의 결과(컬럼 구도와 데이터)를 새 테이블(새_테이블)의 정의로 사용하도록 사용하도록지시 합니다.-- 테스트create table new_student as select * from tb_studen..

MySQL 2025.05.16

(DB) 트랜잭션 이란 & (COMMIT,ROLLBACK) -19

1.트랜잭션이란?더보기더보기1.트랜잭션이란?트랙잭션은 데이터베이스에서 여러 SQL문을 하나의 작업 단위로 묶어 실행합니다. 모든 작업이 성공해야 적용되며, 하나라도 실패하면 전체가 취소됩니다. 요약-트랜잭션은 데이터베이스에서 하나의 논리적 작업 단위입니다.-여러 SQL 명령어 묶어 "전부 성공"하거나 "전부 실패"하도록 보장합니다.-실행활 예: 은행 송금- A가 B에게 5만 원 송금: A 계좌에서 5만원 감소, B 계좌에서 5만원 증가-두 작업이 모두 성공해야 데이터가 올바름 트랜젹션의 중요성-데이터 무결성 유지 : 부분 성공/실패로 인한 오류 방지- 예: 송금 중 시스템 오류 발생 시, 돈이 사라지거나 중복 지급 되지 않도록 보호 질문 : 트랜잭션이 없다면 은행 송금에서 어떤 문제가 생길까?트랜잭션이..

MySQL 2025.05.16