Java教程数据库.ppt
《Java教程数据库.ppt》由会员分享,可在线阅读,更多相关《Java教程数据库.ppt(36页珍藏版)》请在三一办公上搜索。
1、,Java入门,4 Java数据库技术,4.1 MySQL和JDBC4.2 使用JDBC 4.3 实例,4.1 MySQL和JDBC概述,MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一,对于一般的个人使用者和中小型企业来说,MySQL提供的功能绰绰有余。,创建数据库test:create database test创建表hero:CREAT
2、E TABLE hero(id int(11)AUTO_INCREMENT,name varchar(30),hp float,damage int(11),PRIMARY KEY(id)DEFAULT CHARSET=utf8;插入一条记录盖伦到表中:insert into hero values(null,盖伦,616,100)查询所有数据:select*from hero统计表中有多少条数据:select count(*)from hero显示前5条数据:select*from hero limit 0,5修改:update hero set hp=818 where id=1删除:de
3、lete from hero where id=1,操作语句,4.1 MySQL和JDBC,JDBC(Java Database Connection,Java数据库连接)是一种用于执行SQL语句的JavaAPI(应用程序设计接口),它由一些Java语言写的类和界面组成。JDBC提供了一种标准的应用程序设计接口,使得开发人员使用Java语言开发完整的数据库应用程序变得极为简单。通过JDBC,开发人员几乎可以将SQL语句传递给任何一种数据库,而无需为各种数据库编写单独的访问程序。JDBC可以自动将SQL语句传递给相应的数据库管理系统。,访问MySQL数据库需要用到第三方的类,这些第三方的类,都被
4、压缩在一个叫做Jar的文件里。为了代码能够使用第三方的类,需要为项目导入mysql的专用Jar包。通常都会把项目用到的jar包统一放在项目的lib目录下导包步骤:右键project-property-java build path-libaries-add external jars,package jdbc;public class TestJDBC public static void main(String args)/初始化驱动 try/驱动类/就在 中/如果忘记了第一个步骤的导包,就会抛出ClassNotFoundException Class.forName(com.mysql.j
5、dbc.Driver);System.out.println(数据库驱动加载成功!);catch(ClassNotFoundException e)/TODO Auto-generated catch block e.printStackTrace();,初始化驱动通过Class.forName(com.mysql.jdbc.Driver);初始化驱动类就在 中,JDBC扩展了Java的功能,例如在Applet中应用JDBC,可以实现与远程数据库的连接,实现不同平台数据库之间的对话。简单地说,JDBC完成下面三个操作:(1)与一个数据库建立连接。Connection con=DriverMan
6、ager.getConnection(jdbc:odbc:CallCenter,sa,);(2)向数据库发送SQL语句。stmt=con.createStatement();rs=stmt.executeQuery(SELECT CID,CPin from tCustomer WHERE CID=z1);,(3)处理数据库返回的结果。while(rs.next()String theInt=rs.getString(CID);String str=rs.getString(CPin);.,4.2 使 用JDBC,JDBC的接口分为两个层次:一个是面向程序开发人员的JDBC API;另外一个是底
7、层的JDBC Driver API。JDBC API 被描述成为一组抽象的Java接口,应用程序可以对某个数据库打开连接,执行SQL语句并且处理结果。最重要的接口如下:处理驱动的调入并且对产生新的数据库连接提供支持。:代表对特定数据库的连接。:代表一个特定的容器,以对一个特定的数据库执行SQL语句。:控制对一个特定语句的行数据的存取。,其中又有两个子类型:用于执行预编译的SQL语句。:用于执行对一个数据库内嵌过程的调用。JDBC Driver API是指接口,封装了不同数据库的驱动程序(像Access、Foxpro、SQL Server等)。由于它是数据库底层处理,所以必须提供对、java.s
8、ql.Statement、和的实现。,package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class TestJDBC public static void main(String args)try Class.forName(com.mysql.jdbc.Driver);/建立与数据库的Connection连接/这里需要提供:/数据库所处于的ip:127.0.0.1(本机)/数据库的端口号:3306(mysql专用端口号)/数据库名称
9、 how2java/编码方式 UTF-8/账号 root/密码 admin,连接数据库,/接上面的代码Connection c=DriverManager.getConnection(jdbc:mysql:/127.0.0.1:3306/test?characterEncoding=UTF-8,root,admin);System.out.println(连接成功,获取连接对象:+c);catch(ClassNotFoundException e)/TODO Auto-generated catch block e.printStackTrace();catch(SQLException e)
10、/TODO Auto-generated catch block e.printStackTrace();,package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;public class TestJDBC public static void main(String args)try Class.forName(com.mysql.jdbc.Driver);,Statement是用于执行SQL语句的,
11、比如增加,删除,Connection c=DriverManager.getConnection(jdbc:mysql:/127.0.0.1:3306/test?characterEncoding=UTF-8,root,admin);/注意:使用的是/不要不小心使用到:com.mysql.jdbc.Statement;Statement s=c.createStatement();System.out.println(获取 Statement对象:+s);catch(ClassNotFoundException e)/TODO Auto-generated catch block e.prin
12、tStackTrace();catch(SQLException e)/TODO Auto-generated catch block e.printStackTrace();,package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;public class TestJDBC public static void main(String args)try Class.forName(com.mysql.
13、jdbc.Driver);Connection c=DriverManager.getConnection(jdbc:mysql:/127.0.0.1:3306/test?characterEncoding=UTF-8,root,admin);,s.execute执行sql语句执行成功后,用mysql-front进行查看,明确插入成功,Statement s=c.createStatement();/准备sql语句/注意:字符串要用单引号 String sql=insert into hero values(null,+提莫+,+313.0f+,+50+);s.execute(sql);Sys
14、tem.out.println(执行插入语句成功);catch(ClassNotFoundException e)/TODO Auto-generated catch block e.printStackTrace();catch(SQLException e)/TODO Auto-generated catch block e.printStackTrace();,执行SQL语句之前要确保数据库test中有表hero的存在,如果没有,需要事先创建表,在回收垃圾语句后面加上下面语句 finally/数据库的连接时有限资源,相关操作结束后,养成关闭数据库的好习惯/先关闭Statement if(
15、s!=null)try s.close();catch(SQLException e)/TODO Auto-generated catch block e.printStackTrace();/后关闭Connection if(c!=null)try c.close();catch(SQLException e)/TODO Auto-generated catch block e.printStackTrace();,数据库的连接是有限资源,相关操作结束后,养成关闭数据库的好习惯先关闭Statement后关闭Connection,package jdbc;import java.sql.Con
16、nection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;public class TestJDBC public static void main(String args)try Class.forName(com.mysql.jdbc.Driver);catch(ClassNotFoundException e)e.printStackTrace();,使用try-with-resource的方式自动关闭连接,try(Connection c=DriverMana
17、ger.getConnection(jdbc:mysql:/127.0.0.1:3306/test?characterEncoding=UTF-8,root,admin);Statement s=c.createStatement();)String sql=insert into hero values(null,+提莫+,+313.0f+,+50+);s.execute(sql);catch(SQLException e)/TODO Auto-generated catch block e.printStackTrace();,String sql=insert into hero val
18、ues(null,+提莫+,+313.0f+,+50+);String sql=delete from hero where id=5;String sql=update hero set name=name 5 where id=3;,增、删、改语句,package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class TestJDBC
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 教程 数据库
链接地址:https://www.31ppt.com/p-5436093.html