1 新建一个名为MysqlDemo的Java Project
2 从http://dev.mysql.com/downloads/connector/j/中下载最新的驱动包。
这里有.tar.gz和.zip两种格式的包,因为在windows下都可以解压缩,随便下一个都行。
3 将下载的驱动包解压缩后,将MySQL-connector-Java-5.1.38-bin.jar拷贝到项目中
4 在项目中建立一个名为MysqlDemo的Java类
5 在MysqlDemo.java中编写代码
- package com.abc;
- importjava.sql.DriverManager;
- importjava.sql.ResultSet;
- importjava.sql.SQLException;
- importjava.sql.Connection;
- importjava.sql.Statement;
- publicclass MysqlDemo {
- publicstaticvoid main(String[] args) throws Exception {
- Connection conn = null;
- String sql;
- // MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称?参数=值
- // 避免中文乱码要指定useUnicode和characterEncoding
- String url = "jdbc:mysql://localhost:3306/test?"
- + "user=root&password=123456&useUnicode=true&characterEncoding=UTF8";
- try {
- // 之所以要使用下面这条语句,是因为要使用MySQL的驱动,所以我们要把它驱动起来,
- // 可以通过Class.forName把它加载进去,也可以通过初始化来驱动起来,下面三种形式都可以
- Class.forName("com.mysql.jdbc.Driver");// 动态加载mysql驱动
- // or:
- // com.mysql.jdbc.Driver driver = new com.mysql.jdbc.Driver();
- // or:
- // new com.mysql.jdbc.Driver();
- System.out.println("成功加载MySQL驱动程序");
- // 一个Connection代表一个数据库连接
- conn = DriverManager.getConnection(url);
- // Statement里面带有很多方法,比如executeUpdate可以实现插入,更新和删除等
- Statement stmt = conn.createStatement();
- sql = "createtable student(NO char(20),name varchar(20),primary key(NO))";
- intresult = stmt.executeUpdate(sql);// executeUpdate语句会返回一个受影响的行数,如果返回-1就没有成功
- if (result != -1) {
- System.out.println("创建数据表成功");
- sql = "insert into student(NO,name) values('2016001','刘大')";
- result = stmt.executeUpdate(sql);
- sql = "insert into student(NO,name) values('2016002','陈二')";
- result = stmt.executeUpdate(sql);
- sql = "select * from student";
- ResultSet rs = stmt.executeQuery(sql);// executeQuery会返回结果的集合,否则返回空值
- System.out.println("学号 姓名");
- while (rs.next()) {
- System.out.println(rs.getString(1)+ " " + rs.getString(2));// 入如果返回的是int类型可以用getInt()
- }
- }
- } catch(SQLException e) {
- System.out.println("MySQL操作错误");
- e.printStackTrace();
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- conn.close();
- }
- }
- }
运行结果: