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;

}

oracle数据库查询和更新的更多相关文章

  1. oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)

    先列上我的数据库表格: c_date(Date格式)     date_type(String格式) 2011-01-01                   0 2012-03-07         ...

  2. python操作oracle数据库-查询

    python操作oracle数据库-查询 参照文档 http://www.oracle.com/technetwork/cn/articles/dsl/mastering-oracle-python- ...

  3. C#连接Oracle数据库查询数据

    C#连接Oracle数据库可以实现许多我们需要的功能,下面介绍的是C#连接Oracle数据库查询数据的方法,如果您对C#连接Oracle数据库方面感兴趣的话,不妨一看. using System; u ...

  4. 005.Oracle数据库 , 查询多字段连接合并,并添加文本内容

    /*Oracle数据库查询日期在两者之间*/ SELECT PKID , OCCUR_DATE, PKID || ' 曾经沧海难为水 ' ||TO_CHAR( OCCUR_DATE, ' yyyy/m ...

  5. 004.Oracle数据库 , 查询多字段连接合并

    /*Oracle数据库查询日期在两者之间*/ SELECT PKID , OCCUR_DATE, PKID || TO_CHAR( OCCUR_DATE, ' yyyy/mm/dd hh24:mi:s ...

  6. 001.Oracle数据库 , 查询日期在两者之间

    /*Oracle数据库查询日期在两者之间*/ SELECT OCCUR_DATE FROM LM_FAULT WHERE ( ( OCCUR_DATE >= to_date( '2017-05- ...

  7. 常用的Oracle数据库语句 (待更新完毕)

    一.常用的查询语句 1.1 常用查询 查表中有多少个字段 select count(*) from user_tab_columns where table_name=upper('表名') 或者 s ...

  8. oracle数据库查询常用语句

    1.查询SCOTT表中有多少表,并显示表的一些描述select * from all_tables WHERE owner='SCOTT' ; 2.查询oracle数据库版本select * from ...

  9. oracle数据库查询全系整理

    oracle数据库方面的知识到今天已经整理了12篇.当然,这不是终点,这只是一个开始,希望我写的文章可以帮助更多初学数据库的童鞋快速上手,如果你觉得文章对你有帮助,那么恭喜你已经入门了,数据库里面的知 ...

随机推荐

  1. Mock.js——数据模板定义

    1. 安装 npm install mockjs --save-dev //安装开发依赖 2. 数据模板定义规则 Mock.mock({...}) String: 'string|num1-num2' ...

  2. git reset 和 git revert 使用区别

    git reset 用于回退代码,但是git pull后会和远程分支保持一致,所以无法修改远程代码 git revert可以撤销代码,撤销后直接git push ,可以修改远程分支的代码

  3. xshell6 同时操作多个终端

    当我们使用Xshell的时候,有时候需要同时建立多个会话,连接不同的服务器或者不同的用户,如何同时向所有会话发送同一指令呢?方法如下: 1.依次点击  查看 ---> 撰写 ---> 撰写 ...

  4. 移动端最强适配(rem适配之px2rem)&& 移动端结合Vuex实现简单loading加载效果

    一.rem之px2rem适配 前言:相信许多小伙伴上手移动端时面对各式各样的适配方案,挑选出一个自己觉得简便.实用.高效的适配方案是件很纠结的事情. 深有体会... 经过多个移动端项目从最初的 vie ...

  5. python 变量之小整数池跟大整数池

    在python中定义变量会有:id,type,value.对于==比较的是value,对于is比较的是id. 因此,对于相同value的变量,它的type相同,但是它的id值可能不一样.对于相同id的 ...

  6. PHP设置凌晨时间戳

    这种需求应是很常见的,但一直没有时间整理. 一天可以领取2次奖励,今天领完了那就等明天再来. 这里面涉及到一个很重要的一点就是凌晨12点的时间戳,以前一直在前端去做判断.最近发现在后端用PHP获取凌晨 ...

  7. webkit之滚动条美化

    由于公司的产品改用webkit内核,在写公共css的时候,不想使用插件模拟,顺便网上查阅了下css3的滚动条美化. 首先,先上一副示意图. 从网络上盗图的(来源 http://zhangyaochun ...

  8. 跟随我在oracle学习php(18)

    修改表: 一般概述 通常,创建一个表,能搞定(做到)的事情,修改表也能做到.大体来说,就可以做到: 增删改字段: 增:alter  table  表名  add  [column]  字段名  字段类 ...

  9. npm安装material-design-icons总是失败

    项目中使用npm或者cnpm安装material-design-icons总是失败 解决办法: 1.自己上github下载后拷贝到项目node_modules目录下 2.还有npm安装老出问题,npm ...

  10. 小谈对Python的认知与期望

    18级新生,在大学之前并未接触过程序语言编程,在众多语言编程中只对C语言有个名字上认知.在上个学期初次了解到Python语言,计算机老师表示Python是现在编程语言中如雨后春笋般的发展飞速的计算机语 ...