JDBC
数据库驱动
驱动:声卡,显卡,数据库
网络异常,图片无法展示
|
我们的程序会通过 数据库驱动,和数据库打交道
JDBC
sum公司为了简化开发人员的(对数据库的统一)操作,提供了一个(Java操作数据库的)规范 俗称 JDBC,这些规范的实现由具体的厂商去做
网络异常,图片无法展示
|
编写一个JDBC程序
- 1.导入数据库数据
- 2.创建一个普通项目
- 3.导入要用的connecter.jar包,然后ADD as Library..才能使用
public static void main(String[] args) throws ClassNotFoundException, SQLException { //1.加载驱动 Class.forName("com.mysql.jdbc.Driver");//固定写法,加载驱动 //2.用户信息和url String url="jdbc:mysql://localhost:3306/数据库名称? useUnicode=true&characterEncoding=utf8&useSSl=true"; String username="账户"; String password="密码"; //3.连接成功,数据库对象 Connection connection= DriverManager.getConnection(url,username,password); //4.执行SQL的对象 Statement 执行 sql的对象 Statement statement= connection.createStatement(); //5.执行SQL的对象去执行SQL,可能存在结果,查看返回结果 String sql="SELECT*FROM users"; ResultSet resultSet=statement.executeQuery(sql); while (resultSet.next()){ System.out.println("id"+resultSet.getObject("表列名")); System.out.println("name"+resultSet.getObject("表列名")); } //6.释怀链接 resultSet.close(); statement.close(); connection.close();
步骤总结:
- 1.加载驱动
- 2.链接数据库DriverManager
- 3.获得执行sql的对象 Statement
- 4.获得返回的结果集
- 5.释怀连接
DiverManager
DriverManager.registerDriver((new com.mysql.jdbc.Driver());
Class.forName("com.mysql.jdbc.Driver");
固定写法,加载驱动
URL
- mysql--3306 协议://主机地址:端口号//数据库?参数1&参数2&参数3
- oralce---1521 jdbc:oracle:thin:@localhost:1521:sid
Statement 执行SQL对象
statement.executeQuery()
查询操作返回ResultSetstatement.execute()
执行任何SQLstatem.executeUpdate()
更新,插入,删除,都是用这个,返回一个受影响的行数
ResultSet 查询的结果集:封装了所有的查询结果
获得指定的数据类型
resultSet.getobject()
不知道数据类型使用 如果知道列的类型就使用指定的类型
statement对象
Jdbc中statement的对象用于向数据库发送SQL语句,想完成对数据库的增删改查,只需要通过这个对象向数据库发送增删改查语句即可
Statement对象的executeUpdate方法,用于向数据库发送增、删、改的sql语句, executeUpdate执行完后,将会返回一个整数(即增删改语句导致了数据库几行数据发生了变化)
Statement.executeQuery方法用于向数据库发送查询句, executeQuery方法返回代表查询结果ResultSet的对象