분류 전체보기 121

기본키(Primary key)

/* 기본키는 UNIQUE와 NOT NULL 속성을 동시에 가진 제약조건으로, 테이블 당 1개의 기본키만 생성할 수 있다. 컬럼명 데이터타입 PRIMARY KEY 혹은 CONSTRAINTS 제약조건명 PRIMARY KEY(컬럼명, ...) // 테이블수준제약 */ -- 기본키 CREATE TABLE ex2_8 ( COL1 VARCHAR2(10) PRIMARY KEY, -- UNIQUE + NOT NULL 포함 // 제약객체이름이 내부적으로 자동생성 COL2 VARCHAR2(10) -- NULL 생략 ); -- 테이블 제약조건 정보 조회 SELECT constraint_name, constraint_type, table_name, search_condition FROM user_constraints WHE..

Data base 2022.10.14

UNIQUE

/* UNIQUE : UNIQUE 제약조건은 말 그대로 해당 컬럼에 들어가는 값이 유일해야 한다는 의미다. 즉 중복 값을 허용하지 않는다. 컬럼에 제약조건 설정시 1)테이블수준제약: 컬럼을 다 정의하고 나서, 마지막에 제약조건설정 예> CREATE TABLE 테이블명( 컬럼명1 테이터타입, 컬럼명2 테이터타입, 컬럼명3 테이터타입, CONSTRATINS 제약조건객체이름 재약조건명령어(컬럼명1) ); 2)컬럼수준제약 : 컬럼 생성시 제약조건 설정 예> 컬럼명 데이터타입 제약조건명령어 */ CREATE TABLE ex2_7 ( COL_UNIQUE_NULL VARCHAR2(10) UNIQUE, -- NULL 생략됨.제약객체이름 자동으로 생성 COL_UNIQUE_NNULL VARCHAR2(10) UNIQUE N..

Data base 2022.10.14

NULL, 제약조건(Constraints),시스템 뷰

NULL은 ‘값이 없음’을 의미하며 테이블을 생성할 때 컬럼 속성에 기술한다. 디폴트 값이 NULL이므로 별도로 지정하지 않으면 해당 컬럼은 NULL을 허용하게 된다. NULL을 허용하지 않으려면 NOT NULL 구문을 명시해야 한다. NULL 허용이란 해당 컬럼에 값을 넣지 않아도 된다는 의미이며, NOT NULL로 명시한 컬럼에 데이터를 넣지 않으면 해당 로우 INSERT 자체가 불가능하다. 제약조건Constraints 은 컬럼에 대한 속성 형태로 정의하지만 엄연히 오라클 데이터베이스 객체 중 하나이며 데이터 무결성(잘못된 데이터)을 보장하기 위한 용도로 사용된다. 제약조건에는 NOT NULL, UNIQUE, 기본키, 외래키, CHECK 등이 있다. (NULL포함X) -- NULL : 컬럼에 데이터를..

Data base 2022.10.14

LOB 데이터 타입

LOB는 ‘Large OBject’의 약자로 대용량 데이터를 저장할 수 있는 데이터 타입이다. CLOB 문자형 대용량 객체. 고정길이와 가변길이 문자 집합 지원, 최대 크기는 (4GB-1) * (데이터베이스 블록 사이즈) NCLOB 유니코드(다국어 지원)를 포함한 문자형 대용량 객체. 최대 크기는 (4GB-1) * (데이터베이스 블록 사이즈) BLOB 이진형 대용량 객체. 최대 크기는(4GB-1) * (데이터베이스 블록 사이즈) BFILE 대용량 이진 파일에 대한 로케이터(위치, 이름)저장. 최대 크기는 4GB 텍스트, 그래픽, 이미지, 사운드 등 비정형 데이터는 그 크기가 매우 커서 이런 데이터를 저장하는 데 LOB 타입을 사용한다.

Data base 2022.10.14

날짜 데이터 타입

오라클에서 제공하는 대표적인 날짜형 데이터 DATE BC 4712년 1월 1일부터 9999년 12월 31일, 연,월,일,시,분,초까지 입력 가능하다. TIMESTAMP [(fractional_seconds_precision)] 연도, 월, 일, 시, 분, 초는 물론 밀리초까지 입력 가능하다. fractional_seconds_precision은 0~9까지 입력할 수 있고 디폴트 값은 6이다. -툴에서 날짜,시간 형식지정으로 보이는 형식이 달라질수있다. 도구-환경설정-데이터베이스-NLS설정 CREATE TABLE ex2_5 ( COL_DATE DATE, -- 년,월,일 시,분,초 COL_TIMESTAMP TIMESTAMP --년,월,일시,분,초,밀리세컨드 );

Data base 2022.10.14

NUMBER형 표기

NUMBER형 예제 123.54 NUMBER 123.54 정상 123.54 NUMBER(3) 124 s는 명시하지 않아 0, p가 3이므로 소수점 첫 자리에서 반올림됨 123.54 NUMBER(3, 2) 오류 p가 3인데 입력값인 123.54는 유효숫자가 다섯 자리여서 오류. 유효숫자가 p보다 크면 오류 발생 123.54 NUMBER(5, 2) 123.54 정상 123.54 NUMBER(7, 1) 123.5 s가 1이므로 .54가 반올림되어 .5 123.54 NUMBER(7, -1) 120 s가 -1이어서 소수점 왼쪽 첫 자리 3이 반올림되어 120 125.54 NUMBER(7, -1) 130 s가 -1이어서 소수점 왼쪽 첫 자리 5가 반올림되어 130 0.1234 NUMBER(4,5) 오류 유효숫자는 ..

Data base 2022.10.14

데이터 타입

데이터 타입 데이터 타입(Datatype)이란 컬럼이 저장되는 데이터 유형을 말하며, 오라클에서는 기본으로 제공되는 기본 데이터 타입(원시 데이터 타입이라고도 함) 데이터 타입설명 CHAR (크기[ BYTE | CHAR ]) 고정길이 문자, 최대 2000byte, 디폴트 값은 1byte VARCARCHAR2 (크기[ BYTE | CHAR ]) 가변길이 문자, 최대 4000byte, 디폴트 값은 1byte NCHAR (크기) 고정길이 유니코드 문자(다국어 입력 가능), 최대 2000byte, 디폴트 값은 1 NVARCARCHAR2 (크기) 가변길이 유니코드 문자(다국어 입력 가능), 최대 4000byte, 디폴트 값은 1 LONG 최대 2GB 크기의 가변길이 문자형, 잘 사용하지 않음 --한글 데이터입력시..

Data base 2022.10.14

데이터베이스 객체의 종류

데이터베이스 객체로는 데이터를 저장해 놓고 꺼내 쓰는 가장 기본적인 객체인 테이블부터 뷰, 인덱스, 시노님, 시퀀스 등이있다 더보기 데이터베이스 객체설명 테이블 데이터를 담고 있는 객체 뷰 하나 이상의 테이블을 연결해 마치 테이블인 것처럼 사용하는 객체 인덱스 테이블에 있는 데이터를 빠르게 찾기 위한 객체 시노님 데이터베이스 객체에 대한 별칭을 부여한 객체 시퀀스 일련번호 채번을 할 때 사용되는 객체 함수 특정 연산을 하고 값을 반환하는 객체 프로시저 함수와 비슷하지만 값을 반환하지는 않는 객체 패키지 용도에 맞게 함수나 프로시저를 하나로 묶어 놓은 객체

Data base 2022.10.14

람다식

y = f(x) 형태의 함수로 구성된 프로그래밍 기법 데이터를 매개값으로 전달하고 결과를 받는 코드들로 구성 객체지향 프로그래밍 보다는 효율적인 경우 대용량 데이터의 처리시에 유리 데이터 포장 객체를 생성후 처리하는 것 보다, 데이터를 바로 처리하는 것이 속도에 유리 멀티코어 cpu에서 데이터를 병렬 처리하고 취합할 때 객체보다는 함수가 유리 코드가 매우 간결해진다. 컬렉션요소(대용량 데이터)를 필터링 또는 매핑해서 쉽게 집계할 수 있다. /* 함수적 인터페이스 : 추상메소드 1개만을 구성요소로 하는 인터페이스. 목적? 람다식문법을 사용 */ @FunctionalInterface // @명령어 : 어노테이션. 인터페이스에서 추상메소드를 반드시 1개만 사용가능. // 추상메소드를 더 추가시 문법적으로 에러..

JAVA 2022.10.12

제네릭 타입의 상속과 구현

// 제네릭 타입 선언 public class Product { private T kind; private M model; public T getKind() { return this.kind;} public M getModel() { return this.model;} // setKind(Tv kind) public void setKind(T kind) { this.kind = kind;} // setModel(String model) public void setModel(M model) { this.model = model;} } class Tv {} 상속 클래스 //제네릭 부모클래스 상속시 자식클래스는 부모의 타입파라미터를 반드시 사용해야 한다. 추가도 할수있다. public class ChildPr..

JAVA 2022.10.12