2015-07-06 26 views
0

先生/ MAM 這是我的代碼成功運行,但不能插入服務器內的任何值Java連接問題到mysql

輸出: -

successfully inserted 11111111 
drver loaded successfully 
created the connection from the database 
successfully inserted 

代碼: -

/* 
* To change this template, choose Tools | Templates 
* and open the template in the editor. 
*/ 

package examples; 

import java.sql.*; 
/** 
* 
* @author Rahul_R_ 
*/ 
public class newfile { 

    Connection conn=null; 

    public newfile() { 

     //inside no paramerter constructor create inside it to define username,password,url 
     String username="root"; 
     String password="root"; 
     String url="jdbc:mysql://localhost:3306/login_page"; 

     try{ 

      Class.forName("com.mysql.jdbc.Driver"); 
      System.out.println("drver loaded successfully"); 


      //create the connection form the database 
      conn=DriverManager.getConnection(url,username,password); 

      System.out.println("created the connection from the database"); 


     }catch(ClassNotFoundException ce){ 

      ce.printStackTrace(); 
      System.out.println("class not found driver error"); 


      //any sql error in database connection from sql sides than this exceptions 
     }catch(SQLException q){ 

      q.printStackTrace(); 
      System.out.println("sql exception in the program or jdbc connectivity"); 


     } 


    } 

public void create(Beans_login b){ 

    //creat the statement to insert something in to the database system 

    try{ 

     //create query written here 
     String query="insert into login_info(id,username,password)"+"values(?,?,?)"; 

     //create the preparestatment and run the query on the tables 

     PreparedStatement psmt=conn.prepareStatement(query); 

     //according to ur database table insert to written statement 

     psmt.setInt(1, b.getId()); 
     psmt.setString(2, b.getUsername()); 
     psmt.setString(3, b.getPassword()); 

    }catch(SQLException e){ 

     //any sql error to show inside it 

     e.printStackTrace(); 
     System.out.println("inside it any username or table name different than error"); 
    } 

} 

//檢查連接是否正常工作

public static void main(String[] args) { 

    //to insert the values 
    Beans_login b=new Beans_login(4, "ggg", "ggg"); 
    System.out.println("successfully inserted 11111111"); 
    //create daos objects 
    newfile f=new newfile(); 
    f.create(b); 
    System.out.println("successfully inserted"); 
    } 


} 

請給我一個解決方案

回答

2

您正在創建語句,但您從未執行它。請查閱this教程以獲取有關如何使用預處理語句和Java數據庫連接的更多信息。

psmt.setInt(1, b.getId()); 
psmt.setString(2, b.getUsername()); 
psmt.setString(3, b.getPassword()); 
psmt.executeUpdate(); // This will pass your prepared statement to the DB engine.