本文实例讲述了JDBC基础知识与技巧。分享给大家供大家参考。具体分析如下:
1.什么是JDBC?
通俗来讲JDBC技术就是通过java程序来发送SQL语句到数据库,数据库收到SQL语句后执行,把结果返回给java程序管理。
2.使用JDBC要有什么条件呢?
A)目标数据库主机的地址
B)数据库软件在该主机上所占用的端口号
C)登陆数据库用的用户名
D)该用户名的密码
E)连接数据库
3.JDBC技术的原理
我们知道,数据库是有各种类型的,不同的厂商生产的数据库标格和规范是不同的,这时候,如果我们用JAVA代码来发送SQL语句,就要根据不同的数据库来写一套又一套的操作代码,这对程序开发者的开发成本是十分巨大的,所以,SUN公司在开发JDBC技术的时候,规定了一套标准接口,数据库产商都必须提供一个驱动来实现这套接口,那么,只要程序开发者在开发时使用了该数据库的驱动,就用一致的方法来开发了,而不需自己写一套有一套的代码去适应不同的数据库。
4.JDBC中的核心API
|- Driver : 驱动程序类实现的接口。
|-Connection connect(String url, Properties info) --用于连接数据库,得到连接对象
Properties 里需要设置的参数:
url: 数据库连接的URL字符串。协议+数据库子协议+主机+端口+数据库
user: 数据库用户名
password: 用户的密码
|-Connection : 与数据库连接的接口
|- Statement createStatement() --创建Statement对象,用于发送sql语句
|- PreparedStatement prepareStatement(String sql) -创建PreparedStatement对象,用于发送预编译的sql语句
|-CallableStatement prepareCall(String sql) --创建CallableStatement对象,用于调用存储过程。
|-Statement: 用于执行静态sql语句
|-int executeUpdate(String sql) --执行更新操作(DDL+DML)
|-ResultSet executeQuery(String sql) --执行查询操作(DQL)
|- PreparedStatement: 用于执行预编译的sql语句
|- int executeUpdate() -- 执行更新操作
|- ResultSet executeQuery() -- 执行查询操作
|- CallableStatement: 用于执行存储过程的sql
|- ResultSet executeQuery() --调用存储过程
|- ResultSet: 结果集。用于封装数据库的查询后的数据
|- boolean next() --将记录光标移动到下一行
|- Object getObject(int columnIndex) -- 得到字段上的值
了解完又哪些API,下面我们就来使用JDBC发送SQL语句吧~
5.使用Statement对象操作数据库
DDL与DML操作
步骤1
导包,因为我使用的是MySQL数据库,所以要使用JDBC技术,必须使用由MySQL数据库产商提供的数据库驱动,所以,第一步我们要把数据库驱动包导入工程里。
使用的包名:mysql-connector-java-5.1.7-bin.jar
步骤2
创建一个普通的类,在里面添加一个方法,在该方法中按照以下步骤
public void testDDL()throws Exception{
//1.注册驱动
Class.forName(\"com.mysql.jdbc.Driver\");
//2.获取连接
Connection conn = DriverManager.getConnection(url, user, password);
//3.创建Statement对象
Statement stmt = conn.createStatement();
//4.准备sql语句
String sql =\"CREATE TABLE student(sid INT PRIMARY KEY,sname VARCHAR(20),age INT)\";
//5.通过statement对象发送sql语句,返回执行结果
int count = stmt.executeUpdate(sql);
//6.打印执行结果
System.out.println(\"影响了\"+count+\"条记录\");
}
//7.关闭资源
if(statement!=null)
{
statement.close();
}
if(conn!=null)
{
conn.close();
}
本文地址:https://www.stayed.cn/item/5344
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我