zoukankan      html  css  js  c++  java
  • JAVA操作数据库

    1. 连接数据库,得到数据库连接变量

    //注意,这是连接mysql的方法
    注意连接数据库的时候

    (1)打开DB Browser 新建一个Database Driver,注意添加Driver JARs的时候添加的包,我的是mysql-connector-java-5.0.3-bin.jar

    (2)要将数据库jar包拷贝到工程下的WEB-INFlib下

    import java.sql.Connection;//java包
    public class DBConnection
    {
    private String dbDriver="com.mysql.jdbc.Driver"; 
    private String dbUrl="jdbc:mysql://[ip地址]:[端口号]/[数据库名]";//根据实际情况变化
    private String dbUser="root";
    private String dbPass="root";
    public Connection getConn()
    {
    Connection conn=null;
    try
    {
    Class.forName(dbDriver);
    }
    catch (ClassNotFoundException e)
    {
    e.printStackTrace();
    }
    try
    {
    conn = DriverManager.getConnection(dbUrl,dbUser,dbPass);//注意是三个参数
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    }
    return conn;
    }
    }
    

      

    2. 插入操作

    public int insert()
    {
    int i=0;
    String sql="insert into (表名)(列名1,列明2) values(?,?)";
    Connection cnn=getConn();
    
    try{
    PreparedStatement preStmt =cnn.prepareStement(sql);
    preStmt.setString(1,值);
    preStmt.setString(2,值);//或者:preStmt.setInt(1,值);
    i=preStmt.executeUpdate();
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    }
    return i;//返回影响的行数,1为执行成功
    }
    

      


    3. 更新操作

    public int update
    {
    int i=0;
    String sql="update (表名) set (列名1)=?,列明2=? where (列名)=?";//注意要有where条件
    Connection cnn=getConn();
    
    
    try{
    PreparedStatement preStmt =cnn.prepareStatement(sql);
    preStmt.setString(1,(值));
    preStmt.setString(2,(值));//或者:preStmt.setInt(1,值);
    preStmt.setInt(3,(值));
    i=preStmt.executeUpdate();
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    }
    return i;//返回影响的行数,1为执行成功
    }
    

      

    4. 查找操作

    public String select
    {
    String sql = "select * from (表名) where (列名)=(值)";
    Connection cnn = getConn();//此处为通过自己写的方法getConn()获得连接
    try
    {
    Statement stmt = conn.createStatement();
    ResultSet rs = stmt.executeQuery(sql);
    
    if(rs.next())
    {
    int m1 = rs.getInt(1);//或者为rs.getString(1),根据数据库中列的值类型确定,参数为第一列
    String m2 = rs.getString(2);
    }
    //可以将查找到的值写入类,然后返回相应的对象
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    }
    return (相应的值的变量);
    }
    

      

    5. 删除操作

    public int delete()
    {
    String sql = "delete from (表名) where (列名)=(值)";
    int i=0;
    Connection conn = getConn();//此处为通过自己写的方法getConn()获得连接
    try
    {
    Statement stmt = conn.createStatement();
    i = stmt.executeUpdate(sql);
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    }
    

      

    6.JAVA操作数据库实现多表联查

  • 相关阅读:
    第二十一章 PHP编译安装(centos7)
    第二十章 nginx常见问题
    第十九章 keepalived高可用
    dijkstra
    求逆序对
    A
    P2014 [CTSC1997]选课
    樱花 混合背包
    1401D
    CF1343D
  • 原文地址:https://www.cnblogs.com/wishsaber/p/10945109.html
Copyright © 2011-2022 走看看