2016년 7월 13일 수요일

01day MySQL

MySQL

  • community 버전 (무료)
  • enterprise 버전 (유료)
MySQL workbench
  • GUI
  • ERD model을 제공함



*Oracle ERD tool

  • ERWin (유료)
  • ko.exerd.com (교육용 무료)

프로젝트 진행을 위한 기본문서
  • UML
  • ERD
 1.
MySQL 실행
MySQL workbench 실행
ERD model

2.
--MySQL은 사용자안에 데이터베이스 폴더가 있어서 데이터베이스를 선택해야지 테이블을 볼 수 있음
mysql> show databases;
mysql> use sakila
mysql> show tables;


 --mysql은 limit로 출력갯수를 제한 할 수 있다
mysql> desc actor;
mysql> select * from actor limit 0, 5;



3. JDBC MySQL 연결
MySQL driver 복사

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class MySQLEx01 {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  String url = "jdbc:mysql://localhost:3306/sakila?useSSL=false"; //경고창 사용하지 않음
  String user = "root";
  String password = "1234";
  
  Connection conn = null;
  Statement stmt = null;
  ResultSet rs = null;
  
  try {
   Class.forName("com.mysql.jdbc.Driver");
   conn = DriverManager.getConnection(url,user,password);
   
   stmt = conn.createStatement();
   String sql = "select * from actor limit 0,10";
   rs = stmt.executeQuery(sql);
   while(rs.next()){
      String actor_id = rs.getString("actor_id"); 
      String first_name = rs.getString("first_name");
      String last_name = rs.getString("last_name");
      String last_update = rs.getString("last_update");
        
      System.out.printf("%s\t%s\t%s\t%s\n",actor_id, first_name, last_name, last_update);
   }
  } catch (ClassNotFoundException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (SQLException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } finally{
   if(rs != null) try { rs.close(); } catch(SQLException e){}
   if(stmt != null) try { stmt.close(); } catch(SQLException e){}
   if(conn != null) try { conn.close(); } catch(SQLException e){}
  }
  
 }

}

4. MySQL 종료
서버이기 때문에 시스템 자원을 많이 이용, 사용하지 않으면 끄는게 좋음

댓글 없음:

댓글 쓰기