java 连接MySQL数据库的步骤与代码测试连通

来源:互联网 发布:11年总决赛数据 编辑:程序博客网 时间:2024/05/22 06:08

一、MySQL的安装

  首先去下载MySQL的安装程序,我使用的版本是mysql-installer-community-5.7.17.0,然后还需要一个mysql-workbench-community-6.3.8-winx64,workbench的程序是让数据库便于管理,如果不安装,那么数据库的代码都要在像cmd界面上,很晦涩难懂。安装过程可以去百度一下,但是安装确实很麻烦。。。

注:在安装时会让你输入密码,一般输入123456就行,好记,不然忘了又要重新安装了。

二、登入MySQL并创建数据库和表

 

*创建好的用户是这个样子的。输入密码,我设的是wlc123456。


*点击红框里的就是创建数据库了,输入名字,一般用英文,最好别出现中文。

*Collation 选择utf8-default collation,这一点很重要,创建表也是一样的,选择这种类型,原因就是这样才可以输出中文,不然会出现乱码!


*界面左下角就会出现你创建的数据库,数据库我设的名字是student,右键单击Tables,选择createTables即可创建表。


*collation同上,注意选择的类型。圆圈依次是,每列的名字,每列的数据类型,例如果是char型,就选择图中的类型,然后()中的数字是长度,自己定的。然后就是其他属性,根据相应的需求勾选就是,一般选前两个就好,Unique是让表中的内容不重复,如果重复,那么程序就会报错。例:表中不能有两个叫“小明”,如果有,程序会报错。


*点击红方框中的图标就可以进入表格进行编辑

这样一来,数据库的创建就成功了,下面进行连通性的测试。

三、测试连通性

import java.sql.*;import java.util.logging.Level;import java.util.logging.Logger;import javax.swing.JOptionPane;/** * * @author last_memory */public class test {    public static void main(String[] args){         try {            Class.forName("com.mysql.jdbc.Driver");//创建驱动器            Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","wlc123456");//这是数据库的路径,并且还有输入账号(一般默认是root),密码之前创建用户时的那个            PreparedStatement pst=con.prepareCall("select * from book");//输入的是要在MySQL中执行的代码            ResultSet rs=pst.executeQuery();//获得执行上面代码后的结果集            while(rs.next()){            System.out.print(rs.getString(1));//我创建的表有五个属性,所以会有五个输出,然后跳行            System.out.print(rs.getString(2));            System.out.print(rs.getString(3));            System.out.print(rs.getString(4)+"  ");            System.out.println(rs.getString(5));            }//最后还有关闭连接            }   catch (ClassNotFoundException ex) {        Logger.getLogger(test.class.getName()).log(Level.SEVERE, null, ex);    } catch (SQLException ex) {        Logger.getLogger(test.class.getName()).log(Level.SEVERE, null, ex);    }    } }
运行结果:

最重要的一点:要实现输出,一定要在库中导入mysql-connector-java-5.1.40-bin,有这个才能够连接数据库,他是桥梁。有需要的也可以联系我。


最后,感谢大家的支持,对于数据库有什么不理解的,也可以问我。大笑



1 0