使用JDBC连接数据看查询主要步骤如下:
1. 加载JDBC驱动程序;
2. 负责管理JDBC驱动程序的类 DriverManager 会识别加载的驱动程序,用 DriverManager 类的方法 getConnection()来创建一个数据库连接类的实例对象;
3. 获取Connection对象的实例,用Connection对象的方法创建一个 Statement 对象实例,执行标准的SQL语句,对数据库、表进行相关操作。
4. 返回的结果用 ResultSet 类来处理。
程序代码如下:
package packageOne; import java.sql.*; /** *//** * 使用JDBC连接数据库MySQL的过程 * DataBase:studentinfo, table:student; * @author DuChangfeng 2008 09 18 */ public class DataBaseTest { public static Connection getConnection() throws SQLException, java.lang.ClassNotFoundException { //第一步:加载MySQL的JDBC的驱动 Class.forName(“com.mysql.jdbc.Driver”); //取得连接的url,能访问MySQL数据库的用户名,密码;studentinfo:数据库名 String url = “jdbc:mysql://localhost:3306/studentinfo”; String username = “root”; String password = “admin”; //第二步:创建与MySQL数据库的连接类的实例 Connection con = DriverManager.getConnection(url, username, password); return con; } public static void main(String args[]) { try { //第三步:获取连接类实例con,用con创建Statement对象类实例 sql_statement Connection con = getConnection(); Statement sql_statement = con.createStatement(); /** *//************ 对数据库进行相关操作 ************/ //如果同名数据库存在,删除 //sql_statement.executeupdate(“drop table if exists student”); //执行了一个sql语句生成了一个名为student的表 //sql_statement.executeupdate(“create table student (id int not null auto_increment, name varchar(20) not null default ’name’, math int not null default 60, primary key (id) ); “); //向表中插入数据 //sql_statement.executeupdate(“insert student values(1, ’liying’, 98)”); //sql_statement.executeupdate(“insert student values(2, ’jiangshan’, 88)”); //sql_statement.executeupdate(“insert student values(3, ’wangjiawu’, 78)”); //sql_statement.executeupdate(“insert student values(4, ’duchangfeng’, 100)”); //—以上操作不实用,但是列出来作为参考— //第四步:执行查询,用ResultSet类的对象,返回查询的结果 String query = “select * from student”; ResultSet result = sql_statement.executeQuery(query); /** *//************ 对数据库进行相关操作 ************/ System.out.println(“Student表中的数据如下:”); System.out.println(“————————“); System.out.println(“学号” + ” ” + “姓名” + ” ” + “数据成绩 “); System.out.println(“————————“); //对获得的查询结果进行处理,对Result类的对象进行操作 while (result.next()) { int number = result.getInt(“id”); String name = result.getString(“name”); String mathScore = result.getString(“math”); //取得数据库中的数据 System.out.println(” ” + number + ” ” + name + ” ” + mathScore); } //关闭连接和声明 sql_statement.close(); con.close(); } catch(java.lang.ClassNotFoundException e) { //加载JDBC错误,所要用的驱动没有找到 System.err.print(“ClassNotFoundException”); //其他错误 System.err.println(e.getMessage()); } catch (SQLException ex) { //显示数据库连接错误或查询错误 System.err.println(“SQLException: ” + ex.getMessage()); } } } |
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
2017年5月数据库流行度排行榜 MySQL与Oracle“势均力敌”
数据库知识网站DB-engines.com最近更新了2017年5月的数据库流行榜单。TechTarget继续与您一起分享最新的榜单情况。
-
2017年3月数据库流行度排行榜 Oracle卫冕之路困难重重
时隔一个月,数据库市场经过一轮“洗牌”,旧的市场格局是否会被打破,曾经占巨大市场份额的企业是否可能失去优势?
-
2017年2月数据库流行度排行榜 攻城容易守城难
2016年下半年,数据库排行榜的前二十名似乎都“固守阵地”,在排名上没有太大的变动。随着2017年的悄然而至,数据库的排名情况是否会有新的看点?
-
MySQL管理特性:让企业适合交易平台
当Alexander Culiniac和他的同事在TickTrade系统公司建立一个基于云的交易平台时,面临一些基本的约束。那就是,系统必须在云上工作良好并且经济实用。