数据库jdbc基础知识集锦

数据库jdbc基础知识集锦

ID:35342759

大小:56.27 KB

页数:4页

时间:2019-03-23

数据库jdbc基础知识集锦_第1页
数据库jdbc基础知识集锦_第2页
数据库jdbc基础知识集锦_第3页
数据库jdbc基础知识集锦_第4页
资源描述:

《数据库jdbc基础知识集锦》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、DayO1:1.JDBCjava数据库链接JDBC是java链接数据库的解决方案。其提供了一套用于简介数据库的通用接口。不同的数据库提供商负责编写实现类来满足java链接数据库。数据库提供商会将这一组实现类打成一个JAR包,我们也称这个JAR包为该数据库的驱动包。JDBC每个接口都定义了相关的抽象方法,无论连接哪个数据库,过程都是一样的,并且我们只需要面向JDBC提供的接口即可,无需了解不同数据库驱动包中的实现类。链接数据库的标准流程:1:注册驱动Class.forName()2:加载驱动建立数据库连接DriverManger3:通过连接创建执行SQL语句的对象Co

2、nnection4:使用语句对象执行SQLStatement5:若是查询语句,则可以获取结果ResultSet6:使用完毕后关闭连接释放资源2.java.sal.Connection是一个接口,表示与特定数据库的连接。不同的数据库驱动包中有该接口的实现类。3.步骤1.注册驱动将数据库厂商提供的jar包中JDBC要求的驱动类导入环境中以便JVM可以执行它。由于不同厂商的jar包中的目录结构和实现类的名字不同,这里的字符串内容不—样。执行这句话时,可能出现:ClassNotFoundException常见的两种情况:A.字符串内容拼写有误;B.驱动jar包没有导入环境中

3、(buildpath)1.通过DriverManger加载驱动并与数据库建立连接,不同的数据库连接地址格式不一样。调用静态方法getConnection时需要传入3个参数:A.数据库URLjdbc:oracle:thin:@host:port:sidB.数据库用户名C.数据库密码2.创建用于执行SQL语句的Statement实例同样的Statement也是接口,驱动包中会有对应的实现类。不过我们不需要关心。只当它是Statement用即可。3.执行SQL语句Statement针对不同的SQL语句提供了不同的方法,常用的方法:booleanexecute(String

4、sql)什么语句都可以执行,但DML,DQL由不同的方法执行,所有该方法普遍用来执行DDLointexecuteUpdate(Stringsql)执行DML语句,返回值为影响数据库多少数据ResultSetexecuteQuery(Stringsql)执行DQL语句,返回值为查询的结果集4.遍历结果集的方式:结果集默认指向第一条记录之上。ResultSet遍历结果集常用方法:1:booleannext()该方法的作用是让结果集表示下一条记录,则返回值为true并白哦是该条记录,则返回值为false2:XXXXgetXXXX(StringcolName)根据字段名返回

5、值当前记录中该字段类型要调用不同类型的方法,比如获取varchar类型数据要调用:StringgetString(StringcolName)1.booleanexecute(Stringsql)通常使用它来执行DDL语句,返回值若为true说明执行SQL后有结果集,由于用它来执行DDL,所以返回值应是false,若SQL语句执行有误会抛出异常。7.intexecutellpdate(Stringsql)返回只为执行完毕后,影响多少条数据。JDBC默认是自动提交食物的,意思就是说每当我们执行一条DML操作,就会自动commit!8.Connetion提供了一个方法:

6、voidSetAutoCommit(booleanquto)当参数传入false时。就关闭了自动提交事物。Day02:1.Statement将SQL语句发送给数据库后,数据库首先要理解该SQL语句的含义,按后制定一个执行计划,这个过程是比较耗时耗费资源的。当制定完毕后,数据库就会执行这个计划然后将结果返回。所以,若使用Statement执行若干条语义相同但是数据不同的SQL时,数据库就会认为他们是不同的SQL语句,而为每一条SQL都会制定执行计划,这对数据库来讲开销非常大的。再加上Statement还存在SQL注入攻击的风险,所以的出的结论为:Statement只适

7、合执行静态SQL语句。(SQL语句中不含有动态数据)。2.当SQL语句中含有动态信息时,由于Statement不适合做,所以JDBC提供另一种专门用来执行动态SQL语句的Statement:PreparedStatementPreparedStatement是Statement的子类。其需要执行预编译SQL语句(动态数据用?代替),然后每次执行SQL语句时只需要将动态信息传入数据库即可,数据库会中哦能否用执行计划。创建PreparedStatement的同时,就只要先将预编译SQL语句发送给数据库,这时,数据库就会理解SQL的含义,并执行计划,由于有?的存在,该

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。