2014-03-31 2 views
0

그래서 app을 만들었으며 이제는 MySQL Server에 연결하려고합니다. 현재 eclipse에서 AVD까지 근무하고 있습니다.내 응용 프로그램을 온라인 MySQL 서버 (워크 벤치)에 연결

는 그래서 SQL Server에 연결하기위한 내 코드 :

java.sql.SQLException: No suitable driver 

어떤 도움 :

try{ 

    Connection con = DriverManager.getConnection("jdbc:mysql://xxxx:3306/cl49-takeawa-cc7","cl49-takeawa-cc7","xxxx"); 
    PreparedStatement st = con.prepareStatement("select * from app_users where user_username='"+username2+"'"); 


    ResultSet rs = st.executeQuery(); 
    while(rs.next()){ 

     String username = rs.getString("user_username"); 

     if(username.equals(username2)){ 

      Toast.makeText(getBaseContext(), "This user already exist! Please try another name", Toast.LENGTH_SHORT).show(); 


     } 

    } 
    user_id++; 

    PreparedStatement st1 = (PreparedStatement) con.prepareStatement("INSERT INTO user (user_id,user_realname,user_username,user_password,user_house_number,user_postcode,user_address,user_email) VALUES (?,?,?,?,?,?,?,?)"); 
    st1.setLong(1, user_id); 
    st1.setString(2, fullname1); 
    st1.setString(3, username2); 
    st1.setString(4, password1); 
    st1.setString(5, housenumber1); 
    st1.setString(6, postcode2); 
    st1.setString(7, address1); 
    st1.setString(8, email1); 
    st1.executeUpdate(); 
    st1.close(); 

    con.close(); 


}catch(Exception ex){ 

    System.out.println(ex); 

} 

는 그리고 이것은 내가 할 그 error입니까?

편집 :

 else{   
      new PostTask(); 
      Toast.makeText(getBaseContext(), "You have created an account! Time to eat!", Toast.LENGTH_SHORT).show(); 
      Intent myIntent = new Intent(getBaseContext(), MainActivity.class); 
       startActivity(myIntent); 
      } 
     } 
    }); 



} 
// The definition of our task class 
    private class PostTask extends AsyncTask<String, Integer, String> { 
    @Override 
    protected void onPreExecute() { 
     super.onPreExecute(); 
    } 

    @Override 
    protected String doInBackground(String... params) { 
     String url=params[0]; 
     try{ 

      Connection con = DriverManager.getConnection("jdbc:mysql://xxxx:3306/cl49-takeawa-cc7","cl49-takeawa-cc7","xxxx"); 
      PreparedStatement st = con.prepareStatement("select * from app_users where user_username='"+username2+"'"); 

      ResultSet rs = st.executeQuery(); 
      while(rs.next()){ 

       String username = rs.getString("user_username"); 

       if(username.equals(username2)){ 

         Toast.makeText(getBaseContext(), "This user already exist! Please try another name", Toast.LENGTH_SHORT).show(); 


       } 

      } 
      user_id++; 

      PreparedStatement st1 = (PreparedStatement) con.prepareStatement("INSERT INTO user (user_id,user_realname,user_username,user_password,user_house_number,user_postcode,user_address,user_email) VALUES (?,?,?,?,?,?,?,?)"); 
      st1.setLong(1, user_id); 
      st1.setString(2, fullname1); 
      st1.setString(3, username2); 
      st1.setString(4, password1); 
      st1.setString(5, housenumber1); 
      st1.setString(6, postcode2); 
      st1.setString(7, address1); 
      st1.setString(8, email1); 
      st1.executeUpdate(); 
      st1.close(); 

      con.close(); 


     }catch(Exception ex){ 

      System.out.println(ex); 

     } 
    return url; 
    } 

    @Override 
    protected void onProgressUpdate(Integer... values) { 
     super.onProgressUpdate(values); 
    } 

    @Override 
    protected void onPostExecute(String result) { 
     super.onPostExecute(result); 
    } 
    }   

} 

가 지금은 다시 LogCat에서 뭔가를하지 않지만, 또한 내가 MySQL Server

답변

0

추가 MySQL의 JDBC 커넥터에이 업데이 트를하지 않고에 추가하려면 프로젝트, 그것은 문제를 해결할 것입니다.

+0

클래스 경로에 추가하고 자바 경로 – pap

+0

빌드 MySQL은 3.0.17 커넥터 시도하고 모든 액세스를 배치 Asyn_Task 안의'mysql' db에 – Sukan

+0

정말 괜찮습니까? 그것을 할 또 다른 방법이 있습니까? 또한 AsyncTask를 의미합니까? – pap

관련 문제