天天看点

Java连接Mysql数据库增删改查操作

//Java链接Mysql的类
class operatedb
{
  String driverName = "com.mysql.jdbc.Driver";  //加载JDBC驱动
  String dbURL = "jdbc:mysql://127.0.0.1:3306/student";  //要连接的服务器,数据库再此未指出
  Connection dbConn;
  Statement stmt;
  public  operatedb(String userName,String userPwd)//构造器的参数指明要连接的数据库、用户名和密码
   {
        try{
            Class.forName(driverName);
            dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
        }catch (Exception e) {
            System.out.println("connection error!");
            e.printStackTrace();
        }
	}
    
	public void anyoperate(String sqls)
	{
        try{
            stmt=dbConn.createStatement();
            stmt.execute(sqls);//将SLQ语句嵌入execute()方法中
            stmt.close() ; 
        }catch (Exception e) {
            System.out.println("anyoperate error!");
        }
	}
    
	public void insert(String sqls,String[] values)
	{
        try{
            PreparedStatement prepare=dbConn.prepareStatement(sqls); 
            for(int i=0;i<values.length;i++)
            prepare.setString(i+1,values[i]);//指定values[0]为第一个参数,也就是代替sqls中的第一个“?”,values[1]为第二个参数,以此类推
            prepare.execute();
            prepare.close();
        }catch (Exception e) {
			System.out.println(e);
        }
	}
    
	public void query(String sqls)
	{
        try{
            stmt=dbConn.createStatement();
            ResultSet rset=stmt.executeQuery(sqls);
            while(rset.next())
            {
                 for(int i=1;i<=5;i++) {
                      
                     System.out.print(rset.getString(i)+"\t");
                }
                 System.out.println(); 
                  
            }	
            rset.close() ;
            stmt.close() ; 
        }catch (Exception e) {
            System.out.println("query error!");
        }
	  }
       public void closeconn()
       { 
            try{ 
            	dbConn.close();
            }catch (Exception e) {
                 System.out.println("close error!");
            }
        }
 } 
           
//增删改查实例化操作
//useoperatedb.java
import java.io.*;
import java.sql.*;
public class useoperatedb
{
    public static void main(String[] srg) throws IOException
    {
        String s1,s2;
        operatedb op1=new operatedb("root","123456");
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));	
        
        /*System.out.println("请输入要查询的专业:");
        s2=br.readLine();
        s1="select * from st1 where major='";
        s1=s1+s2+"'";
        op1.query(s1);*/
        
        System.out.println("添加一--------------");
        String[] v={"090811203","王五","女","90-05-05","信息"};
        s1="insert into st1 values(?,?,?,?,?)";
        op1.insert(s1,v);
        
        
        
        System.out.println("添加二--------------");
        String[] v1={"090811204","王六","男","90-06-06","计算机"};
        s1="insert into st1 values('"+v1[0]+"','"+v1[1]+"','"+v1[2]+"','"+v1[3]+"','"+v1[4]+"')";
        op1.anyoperate(s1);
        
            
        /*System.out.println("修改--------------");
        s1="update st1 set major='计算机' where major='computer'";
        op1.anyoperate(s1);*/
        
        System.out.println("删除--------------");
        s1="delete from st1  where major='计算机'";
        op1.anyoperate(s1);
         
        System.out.println("查询--------------");
        s1="select * from st1 ";
        op1.query(s1);
        
        op1.closeconn();
	}	
}