美文网首页
MySQL---数据库从入门走向大神系列(二)-用Java对My

MySQL---数据库从入门走向大神系列(二)-用Java对My

作者: 匆匆那年过客 | 来源:发表于2019-03-20 16:23 被阅读0次

    上节已经学会对MySQL进行简单的增删改查了,那么,我们如何实现用Java来对数据库操作增删改呢。

    本节将用Java演示对MySQL进行增删改查。

    简单的来说,分为4个步骤:

    1、加载连接器(驱动)   通过Driver类 (最好用类反射来加载,更加灵活)

    2、建立与数据库的连接

    3、获取语句对象

    4、对数据库进行操作(增删改查)

    其实第一步现在可以不用写了,高版本的MySQL已经在内部帮我们写好了第一步,但是,为了兼容性更好(兼容低版本的MySQL)我们最好还是写上第一步。

    我们先看一下原数据库表:

    用Java对数据库进行增删改:

    1.package cn.hncu.sqlHello;

    2.

    3.import java.sql.Connection;

    4.import java.sql.DriverManager;

    5.import java.sql.SQLException;

    6.import java.sql.Statement;

    7.

    8.import org.junit.Test;

    9.

    10. //import com.mysql.jdbc.Driver;

    11.

    12.public class dbAccess {

    13.

    14.       @Test

    15.        public void hello() throws ClassNotFoundException, SQLException {

    16.          //1、加载连接器(驱动)  Driver

    17.          Class.forName("com.mysql.jdbc.Driver");

    18.          //用类反射加载,更灵活

    19.

    20.         //2、建立连接

    21.         //String url = "jdbc:mysql://127.0.0.1:3306/hncu";//这一句是采用默认编码

    22.         String url = "jdbc:mysql://127.0.0.1:3306/hncu?useUnicode=true&characterEncoding=utf-8";//采用指定编码连接

    23.

    24.            Connection con  = DriverManager.getConnection(url, "root", "1234");

    25.              //这3个参数是:连接串、用户名、密码

    26.

    27.               //3、获取语句对象

    28.               Statement st = con.createStatement();

    29.                //对表格hncu增加一行数据

    30.

    31.                ////4 对数据库进行操作(增删改)

    32.                String sql = "insert into stud values('1010','杨过',26,'武侠')";

    33.                 //String sql = "insert into stud values('1010','杨过',26,'武侠');";//sql语句加上分号也是一样的。

    34.                //但是注意!!!不能一次添加多条语句运行!(中间用分号隔也不行)

    35.                st.execute(sql);//增删改用:st.excute()方法

    36.           }

    37. }

    38.

    如果要运行多条语句怎么办,那就像这样的,运行多次第4步,可以达到相同的效果:

    例:

    sql = "insert into stud values('1011','杨过1',26,'武侠');";

    st.execute(sql);

    sql = "insert into stud values('1011','杨过1',26,'武侠');";

    st.execute(sql);

    运行之后的stud表:

    删除和修改也是和增加一样的,只要把sql那个字符串换一下就可以了(sql那个字符串为SQL操作语句)。

    查询有所不同!

    Java查询SQL数据库语句代码如下:

    1. package cn.hncu.sqlHello;

    2.

    3. import java.sql.Connection;

    4. import java.sql.DriverManager;

    5. import java.sql.ResultSet;

    6. import java.sql.SQLException;

    7. import java.sql.Statement;

    8.

    9. import org.junit.Test;

    10.

    11. //import com.mysql.jdbc.Driver;

    12.

    13. public class dbAccess {

    14.

    15.         @Test

    16.          public void hello() throws ClassNotFoundException, SQLException {

    17.          //1、加载连接器(驱动)  Driver

    18.          Class.forName("com.mysql.jdbc.Driver");

    19.          //用类反射加载,更灵活

    20.

    21.         //2、建立连接

    22.          //String url = "jdbc:mysql://127.0.0.1:3306/hncu";//这一句是采用默认编码

    23.          String url = "jdbc:mysql://127.0.0.1:3306/hncu?useUnicode=true&characterEncoding=utf-8";//采用指定编码连接

    24.

    25.           Connection con  = DriverManager.getConnection(url, "root", "1234");

    26.           //这3个参数是:连接串、用户名、密码

    27.         

    28.          //3、获取语句对象

    29.          Statement st = con.createStatement();

    30.           //对表格hncu增加一行数据

    31.

    32.           //4 对数据库进行操作(查询)

    33.            String sql = "select * from stud where sname like '%三%' or sname like '%四%';";

    34.              ResultSet rs =  st.executeQuery(sql);

    35.             while(rs.next()){

    36.                        //为什么不用hasNext呢,因为rs就像一个指针,rs最开始的位置并不是指向第一个数据,

    37.                       //而是指向开头地址,所以不能用hasNext来判断,而必须跳过第一个不读.

    38.                       String sno = rs.getString(1);//指定列号的方式读取。第一列的序号为1。

    39.     

    40.                        String sname = rs.getString("sname");//指定列名的方式来读取

    41.                         int age = rs.getInt("age");

    42.                          String saddress = rs.getString(4);

    43.                          System.out.println(sno+","+sname+","+age+","+saddress);

    44.                    }

    45.              }

    46.     }

    此处是查询sname带有三,或者带有四的数据。

    其他的都是这样,改掉sql语句就可以进行对应的增删改查了!

    ---------------------

    作者:谙忆

    来源:CSDN

    原文:https://blog.csdn.net/qq_26525215/article/details/52134644

    版权声明:本文为博主原创文章,转载请附上博文链接!

    相关文章

      网友评论

          本文标题:MySQL---数据库从入门走向大神系列(二)-用Java对My

          本文链接:https://www.haomeiwen.com/subject/yfhtvqtx.html