JDBCUtils涉及三表查询应用
来源:互联网 发布:淘宝商品下架怎么办 编辑:程序博客网 时间:2024/06/06 10:32
package com.athong.jdbc.jdbcutils;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JDBCUtils {
// 数据库驱动-----对象
private static final String driverUrl = "oracle.jdbc.driver.OracleDriver";
// Oracle数据库连接地址
private static final String url = "jdbc:oracle:thin:@localhost:1521:ORCL";
// Oracle数据库登陆账号
private static final String username = "hong";
// Oracle数据库登陆密码
private static final String password = "123456";
private static Connection conn;
private static PreparedStatement ps;
private static ResultSet rs;
/***************************************************************************
* 创建数据库连接
*
* @param args
*/
public static Connection getConnection() {
try {
// 1.加载数据库驱动
Class.forName(driverUrl);
// 2.获取数据库连接对象
conn = DriverManager.getConnection(url, username, password);
} catch (Exception e) {
e.printStackTrace();
}
// 3.返回连接对象
return conn;
}
/**
* 获取数据库的结果集
*
* @param args
*/
public void getResultList() {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "select * from people";
try {
// 3.执行SQL语句
ps = conn.prepareStatement(sql);
// 4.获取结果集
rs = ps.executeQuery();
// 5.遍历结果集
while (rs.next()) {
String p_number = rs.getString(1);
String p_name = rs.getString(2);
int p_age = rs.getInt(3);
int p_sex = rs.getInt(4);
System.out.println(p_number + ":" + p_name + ":" + p_age + ":"
+ p_sex);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 5.关闭数据库连接
close();
}
}
/**
* 关闭数据库连接
*
* @param args
*/
public static void close() {
try {
if (rs != null) {
rs.close();
}
if (ps != null) {
ps.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
/***************************************************************************
* 向数据库添加数据
*
* @param args
*/
public void insert(String p_number, String p_name, int p_age, int p_sex) {
// 1.获取连接对象
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "insert into people(pnumber,pname,age,sex)values(?,?,?,?)";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
ps.setString(1, p_number);
ps.setString(2, p_name);
ps.setInt(3, p_age);
ps.setInt(4, p_sex);
ps.executeUpdate();
System.out.println("添加数据成功!");
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭连接
close();
}
}
/***************************************************************************
* 修改数据库中的数据
*
* @param args
*/
public void update(String p_name, int p_age, int p_sex) {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "update people set pname = ?,age = ?,sex = ? where pnumber = 'dddd'";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
ps.setString(1, p_name);
ps.setInt(2, p_age);
ps.setInt(3, p_sex);
ps.executeUpdate();
System.out.println("修改数据成功!");
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭连接
close();
}
}
/***************************************************************************
*
* @param args
*/
public void delete(String p_number) {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "delete from people where pnumber = ?";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
ps.setString(1, p_number);
ps.executeUpdate();
System.out.println("删除数据成功!");
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭数据库连接
close();
}
}
/***************************************************************************
* 三表查詢
*
* @param args
*/
public void getThreeTableResultSet() {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "select * from tb_student1 stu inner join tb_class1 stc "
+ "on stu.classid=stc.classid inner join tb_score sts on stu.stuid=sts.stuid";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
System.out.println("学号"+"\t"+"姓名"+"\t"+"班级"+"\t"+"分数");
while (rs.next()) {
int stuid = rs.getInt("stuid");
String stuname = rs.getString("stuname");
String classname = rs.getString("classname");
int scoredata = rs.getInt("scoredata");
System.out.println(stuid + "\t" + stuname + "\t" + classname
+ "\t" + scoredata);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭数据库连接
close();
}
}
public static void main(String[] args) {
JDBCUtils jdbc = new JDBCUtils();
// JDBCUtils.insert("hoasdfasasdfa", "fffff", 12, 1002);
// JDBCUtils.update("456", 0, 1001);
// JDBCUtils.delete("cccc");
// JDBCUtils.getResultList();
// jdbc.delete("2222");
// jdbc.update("789", 30, 1001);
// jdbc.getResultList();
// jdbc.insert("2222","ddddd", 12, 1002);
jdbc.getThreeTableResultSet();
}
}
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class JDBCUtils {
// 数据库驱动-----对象
private static final String driverUrl = "oracle.jdbc.driver.OracleDriver";
// Oracle数据库连接地址
private static final String url = "jdbc:oracle:thin:@localhost:1521:ORCL";
// Oracle数据库登陆账号
private static final String username = "hong";
// Oracle数据库登陆密码
private static final String password = "123456";
private static Connection conn;
private static PreparedStatement ps;
private static ResultSet rs;
/***************************************************************************
* 创建数据库连接
*
* @param args
*/
public static Connection getConnection() {
try {
// 1.加载数据库驱动
Class.forName(driverUrl);
// 2.获取数据库连接对象
conn = DriverManager.getConnection(url, username, password);
} catch (Exception e) {
e.printStackTrace();
}
// 3.返回连接对象
return conn;
}
/**
* 获取数据库的结果集
*
* @param args
*/
public void getResultList() {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "select * from people";
try {
// 3.执行SQL语句
ps = conn.prepareStatement(sql);
// 4.获取结果集
rs = ps.executeQuery();
// 5.遍历结果集
while (rs.next()) {
String p_number = rs.getString(1);
String p_name = rs.getString(2);
int p_age = rs.getInt(3);
int p_sex = rs.getInt(4);
System.out.println(p_number + ":" + p_name + ":" + p_age + ":"
+ p_sex);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 5.关闭数据库连接
close();
}
}
/**
* 关闭数据库连接
*
* @param args
*/
public static void close() {
try {
if (rs != null) {
rs.close();
}
if (ps != null) {
ps.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
/***************************************************************************
* 向数据库添加数据
*
* @param args
*/
public void insert(String p_number, String p_name, int p_age, int p_sex) {
// 1.获取连接对象
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "insert into people(pnumber,pname,age,sex)values(?,?,?,?)";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
ps.setString(1, p_number);
ps.setString(2, p_name);
ps.setInt(3, p_age);
ps.setInt(4, p_sex);
ps.executeUpdate();
System.out.println("添加数据成功!");
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭连接
close();
}
}
/***************************************************************************
* 修改数据库中的数据
*
* @param args
*/
public void update(String p_name, int p_age, int p_sex) {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "update people set pname = ?,age = ?,sex = ? where pnumber = 'dddd'";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
ps.setString(1, p_name);
ps.setInt(2, p_age);
ps.setInt(3, p_sex);
ps.executeUpdate();
System.out.println("修改数据成功!");
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭连接
close();
}
}
/***************************************************************************
*
* @param args
*/
public void delete(String p_number) {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "delete from people where pnumber = ?";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
ps.setString(1, p_number);
ps.executeUpdate();
System.out.println("删除数据成功!");
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭数据库连接
close();
}
}
/***************************************************************************
* 三表查詢
*
* @param args
*/
public void getThreeTableResultSet() {
// 1.获取数据库连接
JDBCUtils.getConnection();
// 2.封装SQL语句
String sql = "select * from tb_student1 stu inner join tb_class1 stc "
+ "on stu.classid=stc.classid inner join tb_score sts on stu.stuid=sts.stuid";
// 3.执行SQL语句
try {
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
System.out.println("学号"+"\t"+"姓名"+"\t"+"班级"+"\t"+"分数");
while (rs.next()) {
int stuid = rs.getInt("stuid");
String stuname = rs.getString("stuname");
String classname = rs.getString("classname");
int scoredata = rs.getInt("scoredata");
System.out.println(stuid + "\t" + stuname + "\t" + classname
+ "\t" + scoredata);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
// 4.关闭数据库连接
close();
}
}
public static void main(String[] args) {
JDBCUtils jdbc = new JDBCUtils();
// JDBCUtils.insert("hoasdfasasdfa", "fffff", 12, 1002);
// JDBCUtils.update("456", 0, 1001);
// JDBCUtils.delete("cccc");
// JDBCUtils.getResultList();
// jdbc.delete("2222");
// jdbc.update("789", 30, 1001);
// jdbc.getResultList();
// jdbc.insert("2222","ddddd", 12, 1002);
jdbc.getThreeTableResultSet();
}
}
0 0
- JDBCUtils涉及三表查询应用
- JdbcUtils
- jdbcUtils
- JdbcUtils
- JDBCUTils
- JDBCUtils
- JDBCUtils
- JDBCUtils
- mysql数据库涉及多表查询
- sql查询作业-保单涉及表的复杂查询
- 涉及多表查询的LINQ语句排错
- 实习日志-mysql-涉及多表的条件查询
- sql语句基础学习(不涉及多表查询)
- mysql 入门第二天 涉及连表查询
- SELECT查询的应用三
- java涉及时间条件查询
- 【asp.net】asp分页(有条件查询,涉及多表查询)<牛腩>
- 两张链表查询 涉及多个字段查询
- 多版本python共存的解决方案
- Android获取应用占用空间
- margin padding
- Linux nc命令详解
- 拆轮子系列:拆 OkHttp
- JDBCUtils涉及三表查询应用
- 根据身份证前17位分析(java)
- PHPCMS 循环多级栏目分类
- php访问url的四种方式
- Spark算子:RDD行动Action操作(7)–saveAsNewAPIHadoopFile、saveAsNewAPIHadoopDataset
- linux常用命令
- Android开发请求网络方式详解
- Spring mvc基本概述
- 收音机的调试