목차
1. 테이블 생성/컬럼 추가/시퀀스 추가
2. 자바와 오라클 연동 테스트
1. 테이블 생성/컬럼 추가/시퀀스 추가
1) 이클립스에서 테이블 생성 및 추가
① Connection profile 설정
• Type: 오라클 버전 선택
• Name: 계정명 선택
• Database: 전역 데이터명 선택
② customer 테이블 생성 / 컬럼 추가
- 테이블 생성 형식: create table 테이블명(컬럼명 자료형);
- 컬럼 추가 형식: alter table 테이블명 add(컬럼명 자료형);
* ‘primary key’ 조건을 붙여서 중복되는 값이 저장되는 것을 방지
③ 시퀀스 추가
- 번호를 직접 기입하는 대신, 자동으로 번호 값을 주기 위해 사용
- 시퀀스 추가 형식: create sequence 테이블명_컬럼명_seq
start with 시작값
increment by 증가값;
2) SQL 실행 함수
명령문 | 자료형 | 실행 함수 |
select | ResultSet | executeQuery() |
insert | int | executeUpdate() |
update | ||
delete |
* Java.sql 패키지 → Statement 인터페이스 → executeQuery(), executeUpdate() 메소드
2. 자바와 오라클 연동 테스트
1) Statement로 SQL문 실행 예제
→ ★JDBC_Insert / JDBC_Select / JDBC_Update / JDBC_Delete 참고
•INSERT 쿼리문
sql = "INSERT into customer(no, name, email, tel) values " ;
sql += "(" + no + ",'" + name +"','" + email +"','"+ tel +"')" ;
→ Statement로 insert 쿼리문 작성시 구조가 다소 복잡
2) PreparedStatement로 SQL문 실행 예제
→ ★JDBC_Insert01 / JDBC_Select01 / JDBC_Update01 / JDBC_Delete01 참고
•INSERT 쿼리문
sql = "INSERT into customer (no, name, email, tel) values (?, ?, ?, ?)";
pstmt = con.prepareStatement(sql);
pstmt.setInt(1, ino);
pstmt.setString(2, name);
pstmt.setString(3, email);
pstmt.setString(4, tel);
int result=pstmt.executeUpdate();
→ PreparedStatement에서는 value값을 물음표로 줌
3) 컬럼 추가 & 시퀀스 추가 예제
→ ★JDBC_Insert02 / JDBC_Select02 / JDBC_Update02 / JDBC_Delete02 참고
•INSERT 쿼리문
sql = "INSERT into customer (no, name, email, tel, address, reg_date)";
sql += " values (customer_no_seq.nextval,?,?,?,?,sysdate)";
- 번호 시퀀스: customer_no_seq.nextval → 시퀀스명.nextval 함수로 구함
- 날짜 함수: sysdate → timestamp 객체를 생성하지 않고 손쉽게 날짜와 시간을 구할 수 있음
→ 함수에 괄호 없음 유의. 대소문자 구분도 하지 않아도 됨
•SELECT 쿼리문
sql = "SELECT * FROM customer order by no asc";
→ order by 컬럼명 asc: 오름차순 정렬 (ex. 1, 2, 3)
→ order by 컬럼명 desc: 내림차순 정렬 (ex. 3, 2, 1)
'Java' 카테고리의 다른 글
23일차: Java MySQL - 2021.07.15 (0) | 2021.07.15 |
---|---|
22일차: Java 오라클/MySQL - 2021.07.14 (0) | 2021.07.14 |
20일차: Java 데이터베이스/오라클- 2021.07.12 (0) | 2021.07.12 |
19일차: Java java.net패키지- 2021.07.09 (0) | 2021.07.10 |
18일차: Java java.io/java.net패키지- 2021.07.08 (0) | 2021.07.08 |