일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 8bit
- stream
- 예외처리
- java
- statement
- driver
- Oracle
- set
- 난수
- 16bit
- Annotaion
- swing
- 다이얼로그
- Connection
- 자바
- Join
- DB연동
- array
- 조회
- JDBC
- select
- 오라클
- Reader
- transient
- where
- 상속
- DB
- InputStream
- Serializable
- Transaction
- Today
- Total
목록전체 글 (46)
오버플로
sequence - 순차적으로 증가하는 번호를 관리하는 객체 - 레코드를 insert하는 순서대로 번호를 넣어야 할 때 - 오라클 버전에 따라 순차적인 번호를 사용하지 못할 수도 있음 > 12c 이전에는 오라클이 종료되면 cache에 설정한 sequence 번호가 사라짐 (8i, 9i, 10g,11g) > 12c 이후 부터는 insert를 실패한 경우에만 번호가 사라짐 (12c~19c) - user_sequences data dictionary에서 생성된 시퀀스를 확인할 수 있음 - 시퀀스 생성) create sequence 시퀀스명 increment by 증가값 start with 시작값 maxvalue 끝값 cache 메모리에 올릴 번호 개수 반복여부; (cycle | nocycle) > 시퀀스 생성..
alter - DDL - 테이블의 관리, 제약사항 관리, 계정관리를 할 수 있는 쿼리 (자주 쓰임!!!) 1. 테이블의 관리 - 컬럼 추가, 컬럼테이터형 변경, 컬럼 삭제, 컬럼명 변경, 테이블명 변경 - 문법) alter table 테이블명 작업…; ** 컬럼 관리의 경우 주의할 점 : ① 제약사항을 붙여서 추가/변경 등 할 수 있으나 레코드의 구성이 제약사항에 위배된다면 추가할 수 없음 ② 컬럼 데이터형 변경이나 컬럼명의 경우 기존 데이터 값에 따라 될수도 안 될수도 있음 1) 컬럼 추가 - 추가된 컬럼은 제일 마지막에 추가됨 - 문법) alter table 테이블명 add 컬럼명 데이터형(크기) 컬럼단위 제약사항; 2) 컬럼 데이터형 변경 - 레코드가 존재하지 않으면 데이터 형 자체를 변경할 수 있..
제약사항 (Constraint) - 테이블에 입력되는 값을 개발자가 원하는 범위에서 입력받기 위해 설정하는 것 - 제약사항명은 유일해야 함 (data dictionary에 등록되기 때문) - key 종류 : primary key, foreign key, unique check 종류 : check, not null - column level constraint(컬럼단위 제약사항)와 table level constraint(테이블단위 제약사항)로 설정할 수 있음 - alter를 가지고 편집할 수 있음 - 테이블이 drop(삭제)되면 제약사항은 같이 삭제됨 - 문법) create table 테이블명 ( 컬럼명 테이터형(크기) constraint 제약사항명 제약사항종류, 컬럼 정의와 제약사항 정의를 분리할 수 ..
1. union - 여러 개의 테이블의 조회 결과를 아래로 붙여서 조회하는 쿼리문 - 컬럼의 이름은 상관없음. (단, 조회되는 인라인뷰의 컬럼명은 첫 번째 쿼리문의 컬럼명이 나옴) 1) 조건 ① 위 테이블의 컬럼 데이터형과 아래에 연결되는 테이블의 컬럼의 데이터형이 일치할 것 ② 위 테이블의 컬럼 개수와 아래 테이블의 컬럼의 개수가 일치할 것 > 테이블이 가지고 있는 컬럼 개수가 아니라 조회할 때의 컬럼 개수 2) 종류 - union : 중복 레코드가 출력되지 않음 - union all : 중복 레코드가 출력됨 3) 문법) select 컬럼명 ,,, from 테이블명 [where~group by ~ ,,,,] union [all] select 컬럼명 ,,, from 테이블명 [where~group by ..
subquery - 쿼리문 안에 (select) 쿼리문을 정의하는 쿼리문 - create, insert, update, delete, select에서 사용할 수 있음 - 안쪽 쿼리문이 한 행을 조회하는 단수행 서브쿼리(single row subquery)와 안쪽 쿼리문이 여러 행을 조회하는 복수행 서브쿼리(multi row subquery)를 사용할 수 있음 => subquery 문이 1행만 조회하는 거면 단수행 서브쿼리(single row subquery) 여러 행을 조회하는 거면 복수행 서브쿼리(multiple row subquery) 1) create subquery - 조회된 결과로 테이블을 복사할 때, 조회된 결과로 비어있는 테이블을 생성할 때 - 제약사항은 복사되지 않으나, not null 조..
function(함수) - 자주 사용될 기능을 미리 구현해놓은 것 - Oracle에서 제공하는 내장함수(built-in finction)와 개발자가 정의하는 함수 - 조회컬럼, insert 값, where 절에서 사용할 수 있음 - 사용법) 함수명(값) -- 값에는 컬럼명, 값이 들어갈 수 있음 - oracle에서는 dual 테이블 제공 > 모든 계정에서 사용할 수 있는 가상 테이블로 입력되는 값으로 테이블이 생성됨 > 계정에서 dual이라는 이름의 테이블을 생성하면 사용할 수 없음 > 입력되는 값으로 컬럼을 생성하고, 조회하는 일을 수행 > alias 사용도 가능 1) 수학함수 절댓값 : abs / abs(값) 반올림 : round / round(값, 자릿수) > 소수부 : 설정한 자리 다음 자리를 반..
~ select 에서 사용할 수 있는 다양한 절에 대해 알아보자 ~ 일단 select의 기본 문법은 아래와 같다! (필수) select ~ from ~ : 테이블의 모든 레코드를 검색 (선택) where절 : 연산자를 사용하여 조건에 맞는 레코드만 검색 group by : 조회 결과를 그룹으로 묶어서 하나만 검색 (중복값이 조회되지 않음) having절 : 그룹으로 묶을 조건 명시 order by절 : 조회 결과를 정렬하여 검색 * 절은 필요한 것만 사용할 수 있으나, 순서를 꼭 지키자 * 1. where절 - 조건에 맞는 레코드만 검색됨 (결과가 참인 것!) * 1=1이면 항상 참으로 모든 행이 조회되고, 1=0은 항상 거짓으로 아무것도 조회되지 않음 - 연산자를 사용하여 조건을 부여하고 검색할 때 사..
1. delete - DML - 테이블에 record를 삭제할 때 사용 - transaction 대상 쿼리 : 삭제된 레코드는 rollback으로 복구할 수 있음 > commit한 data는 rollback 불가 - truncate보다 삭제하는 속도가 느림 - where절에 해당하는 레코드를 삭제 (0~n건 삭제) - 문법) -- 해당 테이블의 모든 내용 삭제 delete from 테이블명; -- 해당 테이블의 특정 레코드를 삭제 delete from 테이블명 where 컬럼명 = 기준값; -- 학생 테이블의 여자에 해당하는 레코드를 모두 삭제 delete from test_student where gender = '여'; commit; select * from TEST_STUDENT; 2. trunca..