View
152
Download
0
Category
Preview:
DESCRIPTION
JDBC 프로그래밍. 이수지 이동주. 데이터 베이스란 ? 데이터 (Data) 들이 모여있는 본거지 (base) 를 말함 여러 프로그램이 필요로 하는 데이터를 한 곳에 모아놓고 통합 관리하는 곳이라는 뜻. 재고 정보. 상품 정보. 상품조회 프로그램. 재고관리 프로그램. 고객 정보. 고객관리 프로그램. 데이터베이스. 쇼핑몰 데이터베이스. 데이터 베이스의 종류 계층형 데이터베이스 관계형 데이터베이스 객체지향 데이터베이스. 데이터베이스의 종류. - PowerPoint PPT Presentation
Citation preview
JDBC 프로그래밍
이수지
이동주
Page 2
데이터베이스
데이터 베이스란 ?
– 데이터 (Data) 들이 모여있는 본거지 (base) 를 말함
– 여러 프로그램이 필요로 하는 데이터를 한 곳에 모아놓고 통합 관리하는 곳이라는 뜻
고객관리프로그램
재고 정보
고객 정보
상품조회 프로그램
상품 정보
재고관리프로그램
쇼핑몰 데이터베이스
Page 3
데이터베이스의 종류
데이터 베이스의 종류
– 계층형 데이터베이스
– 관계형 데이터베이스
– 객체지향 데이터베이스
Page 4
DBMS
데이터를 저장 / 관리 기능은 운영체제가 제공하는 기능이 아님
별도의 소프트웨어 필요 데이터베이스 관리 시스템 (DBMS)
DBMS 종류에 따른 분류– 계층형 DBMS
– 관계형 DBMS
– 객체지향 DBMS
JDBC API 도 관계형 데이터베이스에 데이터를 읽고 쓰는데 사용되는 API
– 단독으로 사용하지 못하고 관계형 DBMS 를 통해서만 읽고 쓸 수 있음
Page 5
MySQL 설치
MySQL 다운– http://www.mysql.com
Page 6
MySQL 설치
MySQL 설치
Page 7
MySQL 설치
MySQL 환경 설정
Page 8
MySQL 실행
start mysqld-nt // MySQL 시작
mysqladmin –u root ping // MySQL 서버작동 체크
Mysqladmin –u root shutdown // MySQL 종료
Page 9
데이터 베이스 생성
mysqladmin –u root create malldb // malldb 데이터베이스생성
mysql -u root // root 사용자 ID 로 mysql 시작
use malldb // database 를 malldb 로 바꿈
Page 10
테이블 생성
테이블 이름 : 상품 정보 테이블 (goodsinfo)
컬럼 이름 영문명 타입 크기
상품코드 code char 5
상품명 name varchar 30
가격 price int 8
제조사 maker varchar 20
데이터를 저장하기 위해서 테이블설계를 해야 함
테이블설계- 테이블의 영문이름 , 컬럼이름 , 컬럼타입 , 컬럼크기를 정하는 것
Page 11
테이블 생성
mysql 문법으로 표시
create table goodsinfo( // goodsinfo 테이블 생성
code char(5) not null, // char 형 code 컬럼 선언
name varchar(30) not null, // varchar 형 name 컬럼 선언
price int(8) not null, // int 형 price 컬럼 선언
maker varchar(20), // varchar 형 maker 컬럼 선언
primary key(code) // code 컬럼을 기본 키로 설정
); // 명령문 끝은 ;( 세미콜론 )
반드시 입력이 되어야 하는 컬럼에는 not null 을 선언 해주어야 함
Page 12
테이블 생성
테이블 생성 화면
Page 13
MySQL 명령문
입력 명령문- Insert into Table Name ( Column Name ) values (‘char value’, int value);
Page 14
MySQL 명령문
출력 명령문- Select Column Name from Table Name;
- Select Column Name from Table Name where condition;
Page 15
MySQL 명령문
갱신 명령문
- Update Table Name set Column Name = new value where condition;
삭제 명령문
- Delete from Table Name where condition;
테이블 삭제 명령문
- Drop table Table Name;
Page 16
MySQL 명령문
MySQL 명령어 사용 – update, delete
Page 17
JDBC(Java DataBase Connectivity)
자바 프로그램에서는 mysql 프로그램을 사용할 수 없음
JDK Library 의 JDBC API 로 데이터 베이스를 이용해야 함
JDBC 드라이버
- DBMS 와 JDK Library 의 JDBC API 를 연결하는 Module
Page 18
JDBC 설치
JDBC 드라이버 다운 (Connector/J)
Page 19
JDBC 설치
설치 과정- 다운받은 Zip 파일의 압축을 해제
- mysql-connector-java-5.1.7 폴더생성
- mysql-connector-java-5.1.7-bin.jar 파일복사
- JDK 가 설치된 Directory 아래의 jre/bin/ext Directory 에 복사
JRE 도 설치 되어 있다면 JRE 가 설치된 Directory 아래의 jre/bin/ext
Directory 에 파일을 복사하면 됨
Page 20
JDBC 프로그램 작성
데이터베이스에 데이터를 읽기 / 쓰기 과정
I. JDBC 드라이버를 JVM 으로 로드
II. DataBase 에 연결
III. DataBase 에 데이터를 읽거나 쓰기
IV. 프로그램을 끝내기 전에 DataBase 와 연결종료
동시에 접속할 수 있는 연결의 수를 제한하기
때문에 중요함
JDBC 드라이버를 로드
DB 에 연결
DB 에 데이터를 읽거나 쓴다
DB 연결을 끊는다
반복 가능
Page 21
JDBC 프로그래밍
JDBC 드라이버 로드- Class.forName("com.mysql.jdbc.Driver");
DataBase 연결- Connection conn = null; //Connection 타입의 conn 객체생성
- DriverManager.getConnection //database 연결 함수
("jdbc:mysql://210.115.58.96:3307/malldb","ju","root");
DataBase 연결 해제- conn.close();
프로그램- JDBCExample.java
Page 22
JDBC 프로그래밍
DataBase 의 데이터 읽기- Statement stmt = conn.creatStatement(); // Statement 객체생성
- ResultSet rs = stmt.executeQuery(“select code, num from goodsinfo;”);
// executeQuery : select 문을 실행하는 함수
- rs.close(); // ResultSet 객체의 자원해제
- stmt.close(); // Statement 객체의 자원해제
MySQL server 는 ISO-8859-1 문자 셋을 사용하기 때문에 Unicode 문자 셋을 사용하는 Java 에서 출력하기 위해서는 변환이 필요
프로그램
- JDBCExample2.java
- JDBCExample3.java
Page 23
JDBC 프로그래밍
DataBase 의 데이터 입력- Statement stmt = conn.createStatement(); //Statement 객체생성
- Int rowNum = stmt.executeUpdate(“insert goodsinfo(code,name,price,maker) “
+ “values(‘10006’,’ 미니오븐’ ,170000,’ 컨벡스’ );”);
// executeUpdate : insert, update, delete 문을 실행하는 함수
프로그램
- JDBCExample4.java
Recommended