야나도 프로젝트

나도 개발자 될수있어

오라클 14

MVC패턴 - 회원가입/ 로그인 구현

Hello HTML Hello, HTML 이것은 Jaemin이 만든 첫번째 HTML입니다. 회원가입 로그인 회원가입과 로그인을 구현해보자. 1. DB 테이블 생성 CREATE TABLE users ( no number primary key, name varchar2(20) NOT NULL, password varchar2(20) NOT NULL, email varchar2(128) NOT NULL UNIQUE, gender char(1) CHECK(gender IN ('M', 'F')), created_at date DEFAULT sysdate); CREATE SEQUENCE seq_users_pk START WITH 1 INCREMENT BY 1; INSERT INTO users (no, name, p..

Web Programming 2021.08.17

JSP 프로그래밍 연습

Q. 이메일 리스트를 관리하는 JSP 웹 응용프로그램을 작성합니다. 1. DB테이블 생성 CREATE TABLE emaillist ( no NUMBER PRIMARY KEY, last_name VARCHAR2(20) NOT NULL, first_name VARCHAR2(20) NOT NULL, email VARCHAR2(128) NOT NULL, createdAt DATE DEFAULT SYSDATE); CREATE SEQUENCE seq_emaillist_pk START WITH 1 INCREMENT BY 1; 1-1. sample 데이터 삽입 INSERT INTO emaillist (no, first_name, last_name, email) VALUES(seq_emaillist_pk.nextval ..

Web Programming 2021.08.13

Oracle Database - JDBC Programming

JDBC 기본 API JDBC 개요 정의 JDBC (Java Database Connectivity) 자바를 이용한 데이터베이스 접속과 SQL 문장의 실행, 그리고 실행 결과로 얻어진 데이터의 핸들링을 제공하는 방법과 절차에 관한 규약 자바 프로그램 내에서 SQL 문장을 실행하기 위한 자바 API SQL과 프로그래밍 언어의 통합 접근 중 한 형태 개발자를 위한 표준 인터페이스인 JDBC API와 데이터베이스 벤더, 또는 기타 서드파티에서 제공하는 드라이브(driver) 환경 구성 - JDK 설치 - http://java.sun.com JDBC 드라이버 적용 %JAVA_HOME% \ \jdbc\lib 에 가면 ojdbc8.jar 파일이 있다. 이것을 작업하는 프로젝트에 lib폴더를 생성하고, Drag & ..

DB-Oracle 2021.08.09

Oracle Database - DB Objects

Oracle Main DB Objects Object 용도 VIEW 하나 혹은 복수개의 테이블 혹은 뷰를 기반으로 한 논리적 테이블 INDEX 테이블 혹은 클러스터의 색인된 컬럼에 나타나는 각 값에 대한 항목을 포함하고 열에 대한 직접적이고 빠른 접근을 제공하는 객체 SEQUENCE 유일한 순차 값을 생성하는 스키마 객체 SYNONYM 테이블, 뷰, 시퀀스 혹은 프로그램 유닛의 별칭(alias) INDEX : 검색성능이 향상되나, 레코드의 변경(INSERT, UPDATE, DELETE)가 있을경우 재구성작업이 필요하여 느려질 수 있음. View Create View Syntax CREATE [OR REPLACE] [FORCE|NO FORCE] VIEW view_name [(alias[,alias]…)] ..

DB-Oracle 2021.08.09

Oracle SQL - Transaction

Oracle SQL - Transaction 정의 - DB에서 하나의 작업으로 처리되는 논리적 작업 단위 - DBMS의 Concurrency Control과 Recovery에서 중요한 역할을 수행 ACID Property - 원자성(Atomicity) : All or Nothing. 하나의 단위로 처리되어야 함 (중간까지만 처리됨은 불가) - 일관성(Consistency) : 데이터베이스의 일관성(무결성)을 깨지 않아야 함 - 격리성(Isolation) : 다른 Transaction과 동시에 수행되더라도 독립적으로 영향을 받지 않아야 햠 - 영속성(Durability) : 한번 수행 완료(commit) 되면 영원히 반영되어 있어야 함(시스템 Crash 상황에서라도) 구성 - DML (INSERT, UPD..

DB-Oracle 2021.08.06

Oracle SQL - DML – INSERT, UPDATE, DELETE

Data Manipulation Language "C"REATE - INSERT "R"EAD - SELECT "U"PDATE - UPDATE "D"ELETE - DELETE --> "CRUD" 종류 Add New Row(s) - INSERT INTO 테이블명 [(컬럼 리스트)] VALUES (값 리스트); Modify Exsiting Row(s) -UPDATE 테이블명 SET 변경내용 [WHERE 조건]; Remove Existing Row(s) -DELETE FROM 테이블명 [WHERE 조건]; 트랜잭션의 대상 - > 복구 할 수 있다. -트랜잭션은 DML의 집합으로 이루어짐 -ALL or NOTHING INSERT 테이블에 새로운 튜플을 삽입할 때 사용하는 명령 Syntax INSERT INTO t..

DB-Oracle 2021.08.06

Oracle Database - DDL – Data Definition Language

DDL 요약 CREATE TABLE : 테이블 생성 ALTER TABLE : 테이블 관련 변경 DROP TABLE : 테이블 삭제 RENAME : 이름 변경 TRUNCATE : 테이블의 모든 데이터 삭제 (주의! 절대 복구 안됨) COMMENT : 테이블에 설명 추가 테이블 생성 - CREATE TABLE 문 이용 - Syntax CREATE TABLE [schema.]table_name (column datatype [DEFAULT expr] [column_constraints], ......, [table_constraints]); Oracle에서의 Table 관리 Oracle은 Database의 공간을 Tablespace라는 논리적 공간으로 분할하여 관리 Table을 만들기 위해서는 CREATE T..

DB-Oracle 2021.08.06

Oracle Database - DCL – Data Control Language

Database User 데이터베이스 사용자 - 데이터베이스에 접속하여 데이터를 이용하기 위해 접근하는 모든 사람 - 이용 목적에 따라 데이터베이스 관리자(Database Administrator: DBA), 최종 사용자, 응용프로그래머로 구분 - Oracle 데이터베이스 생성시 기본적으로 생성되는 계정 - SYS - Data Dictionary Table의 소유자 - SYSTEM - 각종 Dictionary View의 소유자 - 각 USER는 동일한 이름의 SCHEMA 소유자로, 해당 SCHEMA의 모든 객체들에 접근할 수 있다 사용자 관리 Syntax 사용자 생성 : CREATE USER username IDENTIFIED BY password; 비밀번호 변경 : ALTER USER username ..

DB-Oracle 2021.08.05

Oracle SQL - SUBQUERY, SET Operation

Oracle SQL - SUBQUERY, SET Operation Subquery 하나의 SQL 질의문 속에 다른 SQL 질의문이 포함되어 있는 형태 예) 'SCOTT' 보다 급여가 많은 사람은? 급여가 많은 사람의 이름? SELECT ename FROM emp WHERE sal > ??? 'SCOTT'의 급여는? SELECT sal FROM emp WHERE ename='SCOTT' SELECT ename FROM emp WHERE sal > ( SELECT sal FROM emp WHERE ename = ‘SCOTT’ ) [연습] hr.employees 'Den' 보다 급여를 많이 받는 사원의 이름과 급여는? Single-Row Subquery Subquery의 결과가 한 ROW인 경우 - Singl..

DB-Oracle 2021.08.05

Oracle SQL - JOIN

SQL 문법 기본 순서 SELECT FROM WHERE ORDER BY Oracle SQL - JOIN JOIN 둘 이상의 테이블을 합쳐 하나의 큰 테이블로 만드는 방법 필요성 관계형 모델에서는 데이터의 일관성이나 효율을 위하여 데이터의 중복을 최소화 (정규화) Foreign Key를 이용하여 참조 정규화 된 테이블로부터 결합된 형태의 정보를 추출할 필요가 있음 예) 직원의 이름과 직원이 속한 부서명을 함께 보고 싶다면? 카티젼 프로덕트 - 두 테이블에서 그냥 결과를 선택한다면... SELECT ename, dname from emp, dept 결과 : 두 테이블 행들의 가능한 모든 쌍이 추출 일반적으로 사용자가 원하는 결과가 아님 - Cartesian Product - Cartesian Product를..

DB-Oracle 2021.08.04