본문 바로가기

프로그래밍 언어/데이터베이스10

데이터베이스 Day7 - Java + DB 연동(3) DB 연동 프로그램 db5 패키지 메뉴 사용 db3 패키지의 DAO/DTO를 사용한 Stuent 예제를 다음과 같이 변경 작성 클래스(java 파일 5개/db3의 DAO,DTO를 import 해온다고 하면 3개) StudentDTO StudentDAO studentInsert: 메소드 생성(입력받고, DAO insert() 호출) StudentSelect: 메소드 (DAO select() 호출) StudentMain: switch문 사용해서 메뉴 정리 StudentDTO package db5; public class StudentDTO { private String stdNo; private String stdName; private int stdYear; private String stdAddress;.. 2021. 11. 26.
데이터베이스 Day6 - Java + DB 연동(2) Java + DB 연동 실습 DBProject DBConnect.java : DB 연결 BookSelectEx.java : DB 연결+ 해당 작업 수행 BookInsertEx.java : DB 연결+ 해당 작업 수행 BookInputInsert.java : DB 연결+ 해당 작업 수행 BookUpdateEx.java : DB 연결+ 해당 작업 수행 BookDeleteEx.java : DB 연결+ 해당 작업 수행 프로젝트명: DBTest 패키지명: db1 클래스 DBConnecton.java BookInsertEX.java DBConnect 생성 package db1; import java.sql.Connection; import java.sql.DriverManager; public class DBCon.. 2021. 11. 25.
데이터베이스 Day5 - Java + DB 연동(1) Java + DB 연동 JDBC(Java Database Connectivity) 다양한 종류의 관계형 데이터베이스에 접근할 때 사용되는 자바 표준 SQL 인터페이스 자바 프로그램이 DBMS에 접근하여 작업할 수 있게 해주는 API를 제공하는 클래스 모음 모든 DBMS에서 공통적으로 사용할 수 있는 인터페이스와 클래스로 구성 실제 구현 클래스는 각 DBMS 벤더가 구현했기 때문에 거의 모든 벤더가 JDBC 드라이버 제공 각 DBMS에 맞는 JDBC 드라이버 사용 JDBC 드라이버 JDBC 인터페이스를 구현한 클래스 파일 모음(jar 파일) 각 DBMS 벤더에서 제공되는 구현 클래스 JDBC의 역할 응용프로그램과 DBMS 사이에서 연결역할 SQL문을 DBMS에 전달하고 그 결과값을 응용프로그램에 전달하는 .. 2021. 11. 24.
데이터베이스 Day5 - 데이터 제어어(DCL) DCL(Data Control Language) DDL / DML / DCL 계정 관리 데이터의 사용 권한 관리 데이터베이스 트랜잭션 명시(COMMIT / REVOKE) COMMIT: 작업 완료 REVOKE 작업 취소 이미 부여된 데이터베이스 객체의 권한 취소 트랜잭션 처리 중에 오류 발생: COMMIT 하지 않고 REVOKE 작업 처리하기 이전으로 되돌림 GRANT: 데이터베이스 객체에 권한 부여 권한 특정 유형의 SQL 문을 실행하거나 다른 사용자의 객체를 사용할 수 있는 권리 권한의 종류 시스템 권한 객체 권한 특정 객체를 조작할 수 있는 권한 DML 사용 권한 : SELECT, INSERT, UPDATE, DELETE 예제 사용자 계정 조회 use mysql; SELECT * FROM user; .. 2021. 11. 24.
데이터베이스 Day5 - SQL에서의 각종 함수 SQL에서의 각종 함수 수학 함수 ROUND(값, 자리수) 반올림한 값을 구하는 함수 자리수 아래에서 반올림하여 자리수까지 출력 양수값: 소수점 오른쪽 자릿수(소수점 이하) 음수 값: 소수점 왼쪽 자릿수 (1의 자리부터) ex) ROUND(3.456, 1) : 3.500 SELECT clientNo, ROUND(AVG(bookPrice * bsQty)) AS "평균 주문액", ROUND(AVG(bookPrice * bsQty),0) AS "1의 자리까지 출력", ROUND(AVG(bookPrice * bsQty),-1) AS "10의 자리까지 출력", ROUND(AVG(bookPrice * bsQty),-2) AS "100의 자리까지 출력", ROUND(AVG(bookPrice * bsQty),-3) A.. 2021. 11. 24.
데이터베이스 Day3 - 데이터 조작어(DML) 데이터 조작어 (DML) 데이터 검색 / 입력 / 수정 / 삭제 SELECT / INSERT / UPDATE / DELETE INSERT(데이터 입력) 테이블에 새로운 행을 삽입하는 명령어 기본 형식 INSERT INTO 테이블명 (열이름 리스트) VALUES (값리스트); ex) INSERT INTO student (stdNo, stdName, stdYear, dptNo) VALUES ('20210101', '홍길동', 1, '1') 실습 sqldb2 스키마(데이터베이스) 생성 CREATE SCHEMA sqldb2; 출판사 테이블 생성 use sqldb2; -- 출판사 테이블 생성 CREATE TABLE publisher( pubNo VARCHAR(10) NOT NULL PRIMARY KEY, pubN.. 2021. 11. 22.
데이터베이스 Day2 - 데이터 정의어(DDL) SQL SQL (데이터베이스 표준 질의어) 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터베이스, 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어 질의어(Query Launguage)는 검색 언어라는 의미 데이터를 검색하는 역할 외에 데이터 입력, 수정, 삭제, 제어, 복구 등 다양한 기능을 제공하는 종합적인 언어 Structured Query Language 에스큐엘 또는 시퀄이라 읽음 DBMS 제품 별 특화된 SQL 사용 SQL 문의 기능별 분류 데이터 정의어(DDL) 데이터베이스, 테이블 구조를 생성 / 수정 / 삭제하는데 사용 스키마, 테이블, 뷰, 인덱스 정의, 변경, 삭제할 때 사용하는 명령문 CREATE / ALTER / DROP CREATE: 데이터베이스, 테이블 등 객체 .. 2021. 11. 19.
데이터베이스 Day1 - MySQL 실행 My SQL 실행 데이터베이스 / 테이블 생성 / 데이터 입력 데이터베이스(스키마) 생성 MySQL 에서는 데이터베이스와 스키마가 동일한 의미 root 권한으로 생성 [Schema]탭 / 우클릭 / Create Schema 데이터베이스 이름 입력(Name) : shopdb 소문자 사용 Character Set: utf8 Collation: Default Collation [Apply] / SQL 코드 확인하고 Finish Character Set : 심볼과 인코딩 집합 Collation : 해당 문자셋을 어떻게 정렬할지 결정하는 알고리즘(방법) ORDER BY, LIKE, Primary Key, 비교 연산자 등 SQL 연산에 영향 데이터베이스만 생성 : Tables 비었음 테이블 생성 회원 테이블 : m.. 2021. 11. 19.
데이터베이스 Day1 - MySQL 설치 MySQL 설치 MySQL Oracle사에서 제작한 DBMS 소프트웨어 대량의 데이터를 관리 오픈소스(Open Source)로 제공 상용 에디션 Standard, Enterprise, Cluster CGE 비용이나 기능 면 비교 Standard < Enterprise < Cluster CGE 무료 에디션 Community Enterprise 버전과 기능상 큰 차이는 없음 사용 허가에 대한 라이선스 차이 실습에 사용할 버전: MySQL Community 8.0 설치 주의 사항 OS 확인: Windows[시작] / 시스템 시스템 종류: 64비트 운영체제 x64 기반 프로세서 (개인의 환경에 맞는지 확인 필수!!!) 한글 경로가 있다면 다운로드 https://www.mysql.com (영어경로) Downloa.. 2021. 11. 19.