1、 jdbc的基本概念
1.jdbc:(java data base connectivity)java数据库连接技术。
jdbc这个技术是由 java提供好的jar包, 程序员需要学习的是:jar包的API(常用的类和接口)
调用jar包中的方法,操作数据库。
jdbc是由 两个主要的jar包组成: rt.jar/java.sql包, rt.jar / javax.sql包
2.为什么一定要学习jdbc技术
因为jdbc是web服务端的技术,是一段java程序。改程序支持 用户的数据访问以及用户的数据存储!!!
在整个web流程中,jdbc是不可或缺的一个环节 (入库和出库的环节)。
-
jdbc的实现原理:主要作用
1.可视化工具能操作的步骤以及sql,jdbc同样可以支持数据库的增删改查
2.jdbc专门负责数据库的访问和连接。基本的配置信息:驱动包/登录名/密码/URL路径/端口/IP地址
3.jdbc本身是jar包,jar包中存在了大量的接口。
jdbc是一种支持数据库的规范,规定了连接数据库的常用接口。
因为 不同的数据库厂商,它们的sql 需要不同的驱动包,
所有 只要使用java去操作某一个数据库时,
该数据库厂商就必须得提供一套程序,实现jdbc接口。
4.jdbc技术是目前web开发的常用技术,即使在我们学习的后期, 比如我们后期学习框架时,底层还是jdbc。 -
jdbc的入门案例:使用jdbc操作mysql
1.导入到项目中,相应mysql的驱动包
2.使用jdbc配置数据库的连接信息:
引入和加载 驱动程序
URL:访问路径,IP:端口号
登录用户名
登录密码
3.建立数据库的连接
4.创建和执行sql语句
5.对执行的结果进行处理。
操作步骤:
.在项目中,创建一个lib文件夹 》把驱动包复制到 项目的lib中 》 右键单击lib,选择【add as library】,加载到项目 》创建一个类:Demo01_jdbc入门.java -
jdbc执行过程中出现的问题:
登录访问被拒绝:
【Exception in thread "main" java.sql.SQLException:
Access denied for user 'root'@'localhost' (using password: YES)】
**解决方案:**需要找到配置信息 user变量 或者 password变量 把它们修改为正确的代码
**数据库database不存在**
【Exception in thread "main" com.mysql.jdbc.exceptions.
jdbc4.MySQLSyntaxErrorException: Unknown database 'javawep'】
**解决方案:**找到url路径,然后修改为已经存在的database
iP地址和端口号写错了:
【Exception in thread "main" com.mysql.jdbc.exceptions.
jdbc4.CommunicationsException: Communications link failure】
解决方案:找到url路径,然后修改为 localhost:3306
sql语句的语法不正确:
【Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server
version for the right syntax to use near 'scale * false teacher1'】
解决方案:找到sql语句,修改为正确的语法格式
获取结果集时,报错:
【Exception in thread "main" java.sql.SQLException: Column 'name' not found.】
解决方案:需要找到 while的循环体,然后修改为正确的字段。
资源提前关闭:
【Exception in thread "main" java.sql.SQLException:Operation not allowed after ResultSet closed】
解决方案:需要把关闭资源的代码写在 while的外面