메인함수가없다.
톰캣이 가지고있다.-> 약속된함수 : service
서비스함수만 오버라이드하면된다
데이터베이스란 ? 데이터를 베이스화해서 사용하는것
데이터를 묶어놓은 집합
실시간으로 데이터사용x
데이터중복사용 -> 데이터결함발생
결함을없애는 데이터구조 - 무결성
데이터베이스의 가장큰 장점 : 무결성
데이터중복없앰 ->결함없앰
데이터베이스관리시스템이란 ?
데이터베이스를관리해주는것
데이터베이스와 데이터베이스관리시스템는 같은가
아니.
데이터베이스관리시스템이 필요한 이유는 ?
동시성,보안,성능해결
(헬스장기구를 여러사람이 동시에쓰려고할때 문제발생/시간이겹치고 관련파트만 접근가능하도록)
데이터베이스를직접이용하지않는다.
관리해주는애한테부탁
일정명령어사용
명령어집합을 SQL이라고한다.
명령어집합 3가지
1. 데이터정의 DDL : create / alter/drop
2. 데이터조작 DML : select / insert/update/ delete
3. 데이터제어 DCL : grant/ revoke(허가)
create table 테이블명(
필드명 타입,
필드명 타입
PRIMARY KEY(필드명)
);
오라클 DBMS 설치
1.데이터베이스관리해주는사람
2.SQL사용
3.튜닝하는사람..?
데이터결함하는과정에서 비효율적인->조인에대한내용...옵티마이저
오라클 DBMS설치
이미 설치가되어있을것.
개발도구를 클라이언트프로그램으로 쓰게된다
SQL : Structures Query langage
구조화된 데이터를 질의한다.
학생,부서,결제 등 개념단위 그룹핑
그룹화된 개념단위 데이터를 질의하려면 데이터를 정의해야한다.
회원이라는 데이터정의
자바컴파일러에게 약속 class member{ }
정의명령어 CREATE
테이블정의
캐릭터는 홑따옴표로 감싼다.
데이터형식 : 캐릭터형
문자자료형 : char, varchar, nchar, nvarchar,long,clob,nclob
VARCHAR :안쓰는공간 반환, (가변적인 길이일 경우 적합)
CHAR : 데이터공간 고정형
- CHAR(2 CHAR) : UTF8 문자하나당 3바이트씀 총6바이트 (크기에 상관없이 글자2개를 넣겠다)
- NCHAR(2) : UTF16 숫자 2는 바이트의미, 1바이트 2개를 준비. 문자하나당 2바이트 (NATIONAL CHARACTER),공간절약
- CHAR(2) : 아스키코드 2개
- 아스키코드외의 문자들은 NCHAR가 적합
VARCHAR2(길이) | NVARCHAR2(길이) | CHAR | NCHAR |
길이가변형 | 길이가변형 | 길이고정 | 길이고정 |
알파벳과 숫자만 | 한글이 포함되는 경우 | ||
NAME1 VARCHAR2(20): 20바이트이하 저장 "일이삼사오육칠팔"은 한글 8자리*3BYTE=24BYTE로 초과 |
NAME2 NVARCHAR2(20) 20자이하 "일이삼사오육칠팔"은 한글 8자리저장하고 추가12자리 더 저장가능 |
Q. VARCHAR(100) 하고 한글10자를 적으면 ?
100은 실제공간이 아니라 MAX를 의미
한 문자당 3바이트*10개 = 30바이트크기
Q. NVARCHAR(100) 하고 한글10자를 적으면 ?
2바이트*10개 = 20바이트적용
괄호안에 100은 최대크기 100BYTE
CREATE TABLE MEMBER21
(
ID NUMBER,
PWS VARCHAR2(50),--CHAR(10) [HI ][OK },VHARCHAR2(10) HI,OK
NAME NVARCHAR2(50),
GENDER NCHAR(2),--'남성','여성'; CHAR(2)<->CHAR(2 CHAR):UTF-8:X3 <->NCHAR(2):UTF-16:X2
BIRTHDAY CHAR(6),--'900112','891225',
PHONE VARCHAR2(13)--아스키범주라 N필요없음
)
CREATE TABLE NOTICE
(
ID NUMBER,
TITLE NVARCHAR2(100),--100바이트, 한글:33문자정도,한글10글자를 적었을경우 N을안붙이면30바이트->공간낭비
"CONTENT" NCLOB--최대4000바이트 CHARACTER LARGE OF BYTE
)
'2021 Newlecture > Servlet & JSP' 카테고리의 다른 글
기존코드분리/사용자가 입력한 값 넣기/라이브러리를연결 (0) | 2021.04.23 |
---|---|
JDBC/엔티티클래스 (0) | 2021.04.22 |
UPDATE SET / JDBC Driver (0) | 2021.04.21 |
컬럼추가(ADD) / 행추가 INSERT INTO / ROLLBACK / COMMIT (0) | 2021.04.20 |
코드블럭 <%%> <%! %> <%= %> <%@ %> (0) | 2021.04.16 |
Server Path / 코드블럭 / 4대 저장소 (0) | 2021.04.15 |
POST와 GET요청 코드 분리하기/서블릿 생명주기/doGET(),doPost() 오버라이드/sendRedirect (0) | 2021.04.14 |
한글깨짐 문제해결 / 계산했던 연산식 출력 / POST와 GET요청 (0) | 2021.04.13 |