java 连接 mysql
编写一个程序,这个程序从student表中读取数据,并打印在命令行窗口中。
一、搭建实验环境 :
1、在mysql中创建一个库,并创建student表和插入表的数据。
2、新建一个Java工程,并导入数据驱动。
二、编写程序,在程序中加载数据库驱动
Class.forName(“com.mysql.jdbc.Driver”);
三、建立连接(Connection)
Connection conn = DriverManager.getConnection(url,user,pass);
四、创建用于向数据库发送SQL的Statement对象,并发送sql
Statement st = conn.createStatement();
ResultSet rs = st.excuteQuery(sql);
五、从代表结果集的ResultSet中取出数据,打印到命令行窗口
六、断开与数据库的连接,并释放相关资源
URL用于标识数据库的位置,程序员通过URL地址告诉JDBC程序连接哪个数据库,URL的写法为:
jdbc:mysql:[]//localhost:3306/test ?参数名:参数值
jdbc: --协议
mysql:[ ] --子协议
//localhost:3306/ --主机:端口
test -- 数据库
Mysql的url地址的简写形式: jdbc:mysql:///sid
常用属性:useUnicode=true&characterEncoding=UTF-8
常用数据库URL地址的写法:
Oracle— jdbc:oracle:thin:@localhost:1521:sid
SqlServer—jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=sid
MySql—jdbc:mysql://localhost:3306/sid
案例:
连接spdb1数据库,查询student表
select * from student;
java连接数据库,操作sql语句 package cn.hsp.test; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; /** * 测试如何操作mysql数据库 * * @author nsz 2014下午2:54:44 */ public class TestMySQL { public static void main(String[] args) { Connection ct = null; PreparedStatement ps = null; ResultSet rs = null; try { Class.forName("com.mysql.jdbc.Driver"); ct = DriverManager.getConnection( "jdbc:mysql://localhost:3306/spdb1", "root", "0108"); ps = ct.prepareStatement("select * from student"); rs = ps.executeQuery(); while (rs.next()) { System.out.println(rs.getInt("id") + " " + rs.getString("name") + " 语文=" + rs.getFloat("chinese")); } } catch (Exception e) { e.printStackTrace(); } finally { try { rs.close(); ps.close(); ct.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
显示结果: