JDBC超级详细笔记

3 篇文章 0 订阅

一、简介:

JDBC(Java Data Base Connectivity)是一种用于执行SQL语句的javaAPI,由一组用java语言编写的类和接口组成。

从结构上看,JDBC是Java语言访问数据库的一套接口集合。从本质上看,JDBC是调用者(开发人员)与执行者(数据库厂商)的一种协议。

二、使用:

1、导包

创建工程后,在工程下创建lib文件夹,导入mysql-connector-java-5.0.4-bin。

JDBC的类库包含在两个包中,即java.sql包和javax.sql包。java.sql包提供了JDBC的基本功能,核心类库。javx.sql包作为JDBC2.0的可选包引入,提供一些扩展功能和高级操作。

2、加载驱动程序

通过调用Class.forname(String driverClassname)方法,加载相应的驱动程序。

//SQL Servr
Class.forname("com.microsoft.jdbc.sqlserver.SQLServerDriver");
//Mysql
Class.forname("com.");
//Oracle
Class.forname("");

3.创建数据库连接

DriverManager类相当于驱动程序的管理器,负责注册JDBC驱动程序,建立连接。最常用的方法是getConnection(),使用它创建连接。

//数据库连接
    //ODBC
    String url="jdbc:odbc:数据库名称";
    //SQL Server
    String url="jdbc:sqlserve://localhost:1433;databaseName=数据库名称";
    //Mysql
    String url="jdbc:mysql://localhost:3306/数据库名称";
    //Oracle
    String url="jdbc:oracle:thin:@localhost:1521:数据库名称";
//用户名
String user="用户名";
//密码
String password="密码";
//进行连接
Connection conn=DriverManager.getConnection(url,user,password);

4.创建Statement对象,用于执行SQL语句

Connection提供了createStatement()方法用于创建Statement对象,该对象用于执行不带参数的SQL语句;

Connection提供了preparedStatement()方法用于创建PreparedStatement对象,该对象用于执行带参数的SQL语句。

//Statement
Statement st=conn.createStatement();
//PrepareStatement
PreparedStatement st=conn.preparedStatement(sql);

5.执行SQL操作

(1).Statement接口执行不带参数的SQL语句

ResultSet executQuery(String sql):执行查询语句,返回ResultSet对象;

int executeUpdate(String sql):执行更新类语句,返回影响行数;

boolean execue(Sring sql):执行语句,如果返回ResultSet对象,返回true,否则返回false;

(2).PreparedStatement接口继承Statement接口,用于执行带参数的SQL语句,SQL语句中用“?”占位

ResultSet executQuery():执行查询语句,返回ResultSet对象;

int executeUpdate():执行更新类语句,返回影响行数;

void setXxx(int i,Xxx x):将SQL第i个参数的值设置为x。

例:

String sql="insert into zgb(a,bc,c) values(?,?,?)";
PreparedStatement st=conn.preparedStatement(sql);
st.setString(1,a);
st.setString(2,b);
st.setString(3,c);
int n=st.executeUpdate();

6.对返回对象操作

ResultSet对象表示查询返回的结果集。

void first():将指针移到第一行,若存在返回true,否则返回false;

boolean next():将指针移到下一行(指针最初在第一行之前),若存在返回true,否则返回false;

Xxx getXxx(int i):返回第i个的值;

Xxx getXxx(String name):返回属性名为name的值。

7.关闭连接

rs.close();

st.close();

conn.close();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值