2013-07-31 1 views
0

약 3 주 동안 Java를 배우고 있습니다. mysql을 java에 연결하고 싶습니다. 지금 시도하고 있습니다. 그러나 문제가 있습니다. 나는 이미 내 우분투를 위해 PHP, 아파치, MySQL 3을 설치했다. 그리고 port 80에서 phpmyadmin에 연결할 수 있습니다. 데이터베이스를 연결할 때 이것이 포트라고 말한 이유가 있다고 생각합니다. 여기먼저 mysql 연결 문제를 시도하십시오

은 내 테이블 :

+-------+-------------+------+-----+---------+----------------+ 
| Field | Type  | Null | Key | Default | Extra   | 
+-------+-------------+------+-----+---------+----------------+ 
| id | int(2)  | NO | PRI | NULL | auto_increment | 
| name | varchar(32) | NO |  | NULL |    | 
+-------+-------------+------+-----+---------+----------------+ 

그리고 여기에 자바 코드 :

import java.sql.DriverManager; 
import java.sql.Statement; 

public class Main { 

    public static void main(String args[]) { 
     try { 

      java.sql.Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:80/test", "root", "1"); 

      Statement state = (Statement) conn.createStatement(); 
      String name = "try"; 
      state.executeUpdate("INSERT INTO deneme (name) VALUES (" + name + ")"); 

     } catch (Exception e) { 
     } 
    } 
} 

이 코드는 약 20 초를 실행하고이 문제에 대한 당신의 생각은 무엇 BUILD SUCCESSFUL (total time: 21 seconds)를 반환은?

+0

무엇이 문제입니까? – Alex

답변

1

...

state.executeUpdate("INSERT INTO deneme (name) VALUES ('" + name + "')"); 

는 단일 및 이중 따옴표 조합 엉망 필요가 없습니다 것입니다 PreparedStament을 사용하는 것입니다.

try 문이 필요한 이유는 데이터베이스에 액세스 할 때 많은 문제가 발생할 수 있으므로 예외 메시지를보고하고 문제를 찾는 데 도움이되므로 예외를보고하기위한 것입니다.

또한 연결하기 전에 JDBC 드라이버가 있는지 확인하는 것이 좋습니다. 다음과 같은 다른 try 문을 삽입하십시오.

try { 
     Class.forName("com.mysql.jdbc.Driver"); 
    } catch (ClassNotFoundException e) { 
     String msg = "The com.mysql.jdbc.Driver is missing\n" 
       + "install and rerun the application"; 
     JOptionPane.showMessageDialog(this, msg, this.getTitle(), JOptionPane.ERROR_MESSAGE); 
     System.exit(1); 
    } 
+0

그건 바보 같았 어 :) – Yusuf

1

포트 80은 MySQL이 아닌 웹 (HTTP) 서버 용으로 예약되어 있다고 가정합니다. 의 MySQL의 기본 포트는 단일 따옴표로 문제가 해결됩니다 3306

+0

이미 시도했지만 mysql에 대한 삽입이 아직 없습니다. – Yusuf

+0

"e.printStackTrace()"catch 블록을 추가하여 어떤 예외가 발생하는지 확인하십시오. – meilechh

+0

출력 : http://ideone.com/vkdCPp – Yusuf

관련 문제