zoukankan      html  css  js  c++  java
  • mysql与简单的jdbc操作

    /*
    statement与preparedStatement比较
    每次执行sql语句,数据库都要执行sql语句的编译,最好用在仅执行一次查询并返回结果的情形,存在sql注入风险。
    在执行可变参数的一条sql时,preparedstatement 比statement效率高,因为DBMS预编译一条sql当然会比多编译一条sql的效率高,
    安全性更好,有效防止sql注入问题,由于采用擦车机制,预先编译的语句,就会放在cache中,下次执行相同的sql语句时,可以直接从
    cache中取出来,大大提高了执行的效率。
    */

    //法一statement使用
    public
    static void main(String[] args) { //先导入驱动的jar包(可以网上下载mysql jdbc 驱动),右键属性-->java build path-->add external jars String url="jdbc:mysql://localhost:3306/student"; //连接数据库的url地址 String username="root"; //数据库的用户名 String password="123"; //数据库的密码 Connection con=null; try { //1.加载mysql数据库驱动 Class.forName("com.mysql.jdbc.Driver"); //2.建立数据库连接,connection是java.sql包下的 con=DriverManager.getConnection(url, username,password); if(con!=null) { System.out.println("数据库连接成功"); }else { System.out.println("数据库连接不成功"); } //3创建sql语句对象 Statement statement=con.createStatement(); //String sql="insert into login values('xiaoge','female','shandong')"; //String sql="delete from login where name='jack'"; String sql="update login set name='lucy' where city='nanjing'"; //4执行语句 int r=statement.executeUpdate(sql); if (r>0) { //System.out.println("insert success.."); //System.out.println("update success.."); System.out.println("delete success..."); } else { //System.out.println(" fail.."); } } catch (Exception e) { e.printStackTrace(); //如果出错,在命令行打印异常信息在程序中出错的位置及原因。 } finally { //5.释放资源 if (con!=null) { try { con.close(); con=null; } catch (SQLException e) { e.printStackTrace(); } } } }
    //法二preparedstatement
    public
    static void main(String[] args) { try { Class.forName("com.mysql.jdbc.Driver"); Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","123"); String sqlString="insert into login values(?,?,?)"; PreparedStatement preparedStatement=connection.prepareStatement(sqlString); int rSet=preparedStatement.executeUpdate(); //小标为1开始 // preparedStatement.setString(1, "lifang"); // preparedStatement.setString(2, "female"); // preparedStatement.setString(3, "guangdong"); preparedStatement.setString(1, "tom"); preparedStatement.setString(2, "man"); preparedStatement.setString(3,"beijing"); int result=preparedStatement.executeUpdate(); if (result>0) { System.out.println("insert success.."); } else { System.out.println("insert fail.."); } } catch (Exception e) { e.printStackTrace(); } }
  • 相关阅读:
    优先队列实现哈弗曼最小权值
    最小生成树 克鲁斯卡尔(Kruskal)算法求最小生成树
    背包问题------
    背包问题------ 分类: ACM 2015-08-03 20:57 1人阅读 评论(0) 收藏
    Cent Savings (DP) 分类: ACM dp 2015-08-03 14:32 4人阅读 评论(0) 收藏
    Cent Savings (DP)
    Judging Troubles (multiset查找) 分类: ACM STL 2015-08-03 14:27 3人阅读 评论(0) 收藏
    Judging Troubles (multiset查找)
    Joke with permutation
    dubbo源码之二——dubbo入口
  • 原文地址:https://www.cnblogs.com/linhong/p/4212095.html
Copyright © 2011-2022 走看看