oracle数据库查询和更新
package sqltest;
import java.sql.*;
import parameter.BaseCanShu;
public class PublicDbOracle {
static String id = "";
static int status = 0;
static Connection con = null;// 创建一个数据库连接
static PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement
static ResultSet result = null;// 创建一个结果集对象
public static void main(String[] args) throws Exception {
// System.out.println(OracleSearchOrder ());
// System.out.println(UpdateStatus ());
}
/**
* 数据库连接开始部分
*/
public static void OracleOpen () throws Exception
{
Class.forName("oracle.jdbc.driver.OracleDriver");// 加载Oracle驱动程序
System.out.println("开始尝试连接数据库!");
String url = "jdbc:oracle:" + "thin:@127.0.0.1:1521:testdb";
String user = "test";// 用户名,系统默认的账户名
String password = "test";// 你安装时选设置的密码
con = DriverManager.getConnection(url, user, password);// 获取连接
// System.out.println("连接成功!");
}
/**
* 关闭数据库
*/
public static void OracleClose () throws Exception
{
try
{
// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
// 注意关闭的顺序,最后使用的最先关闭
if (result != null)
{
result.close();
}
if (pre != null)
{
pre.close();
}
if (con != null)
{
con.close();
}
// System.out.println("数据库连接已关闭!");
}
catch (Exception e)
{
e.printStackTrace();
}
}
/**
* 查询
*/
public static String OracleSearchOrder() throws Exception {
BaseCanShu bcs = new BaseCanShu();
try {
OracleOpen();
String sql="select * from t_table t " +
"where t.name = ?" +
"and t.no like ?" +
"and t.pass = ?" +
"ORDER BY t.id DESC";
pre = con.prepareStatement(sql);
pre.setString(1,bcs.name);
pre.setString(2,bcs.no);
pre.setString(3,bcs.pass);
result=pre.executeQuery();// 执行查询,注意括号中不需要再加参数
if(result.next())
{
orderid = result.getString("t_no");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
OracleClose();
}
return id;
}
/**
* 修改销账表支付状态
*/
public int UpdateStatus() throws Exception {
BaseCanShu bcs = new BaseCanShu();
try {
OracleOpen();
String sql="update t_table t set " +
"t.onestatus = '1', t.twostatus = '2' " +
"where t.id =" +
"(select max(cc.id) from t_other cc " +
"where cc.no like ?" +
"and cc.name = ?)";
pre = con.prepareStatement(sql);
pre.setString(1,bcs.no);
pre.setString(2,bcs.name);
status = pre.executeUpdate();// 执行查询,注意括号中不需要再加参数
if(status == 1)
{
System.out.println("已更新");
}
else
{
System.out.println("未更新");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
OracleClose();
}
return status;
}
最新文章
- CatchPacket网络抓包软件
- MongoDB-常见问题
- Daily Scrum Meeting ——FifthDay
- Struts2 源码分析——过滤器(Filter)
- React Canvas:高性能渲染 React 组
- Spring AOP 5种通知与java动态代理
- 【Jersey】IntelliJ IDEA + Maven + Jetty + Jersey搭建RESTful服务
- Dynamic CRM 2013学习笔记(一)插件输入实体参数解析
- Android-adb 常用命令 和 sqlite
- UESTC_吴队长征婚 2015 UESTC Training for Search Algorithm &; String<;Problem E>;
- AIX5.3CPU占用高的问题核查
- c语言的lua库编写
- c# tolist() 浅析
- Day10 空时编码理论之无线信道、分集和复用
- MongoDB代码——Python篇
- jquery chrome中取select 的值一就返回了
- 《深入分析Linux内核源代码》读书、私藏笔记大放送
- 机器学习算法_knn(福利)
- jdbc操作根据bean类自动组装sql,天啦,我感觉我实现了hibernate
- 碰到在Windows中访问局域网文件夹, 提示无法访问时的解决办法