Download presentation
Presentation is loading. Please wait.
1
JDBC 프로그래밍 이수지 이동주 1
2
데이터베이스 데이터 베이스란? 고객 정보 데이터(Data)들이 모여있는 본거지(base)를 말함
여러 프로그램이 필요로 하는 데이터를 한 곳에 모아놓고 통합 관리하는 곳이라는 뜻 쇼핑몰 데이터베이스 고객관리 프로그램 재고 정보 고객 정보 상품조회 상품 정보 재고관리
3
데이터베이스의 종류 데이터 베이스의 종류 계층형 데이터베이스 관계형 데이터베이스 객체지향 데이터베이스
4
DBMS 데이터를 저장/관리 기능은 운영체제가 제공하는 기능이 아님 별도의 소프트웨어 필요 데이터베이스 관리 시스템(DBMS)
JDBC API도 관계형 데이터베이스에 데이터를 읽고 쓰는데 사용되는 API 단독으로 사용하지 못하고 관계형 DBMS를 통해서만 읽고 쓸 수 있음
5
MySQL 설치 MySQL 다운
6
MySQL 설치 MySQL 설치
7
MySQL 설치 MySQL 환경 설정
8
MySQL 실행 start mysqld-nt // MySQL 시작
mysqladmin –u root ping // MySQL 서버작동 체크 Mysqladmin –u root shutdown // MySQL 종료
9
데이터 베이스 생성 mysqladmin –u root create malldb // malldb 데이터베이스생성
mysql -u root // root 사용자ID로 mysql 시작 use malldb // database를 malldb로 바꿈
10
테이블 생성 데이터를 저장하기 위해서 테이블설계를 해야 함 테이블설계
테이블의 영문이름, 컬럼이름, 컬럼타입, 컬럼크기를 정하는 것 테이블 이름: 상품 정보 테이블(goodsinfo) 컬럼 이름 영문명 타입 크기 상품코드 code char 5 상품명 name varchar 30 가격 price int 8 제조사 maker 20
11
테이블 생성 mysql 문법으로 표시 반드시 입력이 되어야 하는 컬럼에는 not null을 선언 해주어야 함
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을 선언 해주어야 함
12
테이블 생성 테이블 생성 화면
13
MySQL 명령문 입력 명령문 Insert into Table Name ( Column Name ) values (‘char value’, int value);
14
MySQL 명령문 출력 명령문 Select Column Name from Table Name;
Select Column Name from Table Name where condition;
15
MySQL 명령문 갱신 명령문 Update Table Name set Column Name = new value where condition; 삭제 명령문 Delete from Table Name where condition; 테이블 삭제 명령문 Drop table Table Name;
16
MySQL 명령문 MySQL 명령어 사용 – update, delete
17
JDBC(Java DataBase Connectivity)
자바 프로그램에서는 mysql 프로그램을 사용할 수 없음 JDK Library의 JDBC API로 데이터 베이스를 이용해야 함 JDBC 드라이버 DBMS와 JDK Library의 JDBC API를 연결하는 Module
18
JDBC 설치 JDBC 드라이버 다운 (Connector/J)
19
JDBC 설치 설치 과정 JRE도 설치 되어 있다면 JRE가 설치된 Directory 아래의 jre/bin/ext
다운받은 Zip 파일의 압축을 해제 mysql-connector-java 폴더생성 mysql-connector-java bin.jar 파일복사 JDK가 설치된 Directory 아래의 jre/bin/ext Directory에 복사 JRE도 설치 되어 있다면 JRE가 설치된 Directory 아래의 jre/bin/ext Directory 에 파일을 복사하면 됨
20
JDBC 프로그램 작성 데이터베이스에 데이터를 읽기 / 쓰기 과정 JDBC 드라이버를 JVM으로 로드 DataBase 에 연결
동시에 접속할 수 있는 연결의 수를 제한하기 때문에 중요함 JDBC 드라이버를 로드 DB에 연결 DB에 데이터를 읽거나 쓴다 DB 연결을 끊는다 반복 가능
21
JDBC 프로그래밍 JDBC 드라이버 로드 DataBase 연결 DataBase 연결 해제 프로그램
Class.forName("com.mysql.jdbc.Driver"); DataBase 연결 Connection conn = null; //Connection 타입의 conn 객체생성 DriverManager.getConnection //database 연결 함수 ("jdbc:mysql:// :3307/malldb","ju","root"); DataBase 연결 해제 conn.close(); 프로그램 JDBCExample.java
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 문자 셋을 사용하기 때문에 Unicode 문자 셋을 사용하는 Java 에서 출력하기 위해서는 변환이 필요 프로그램 JDBCExample2.java JDBCExample3.java
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
Similar presentations