/**
* 接口方法
*/
public void excuteInputDB(SynchServiceConfig synchServiceConfig)
throws Exception {
try {
// if(!"".equals(queryQdParaWayinfo()))
// {
// CLOB clob = oracle.sql.CLOB.createTemporary(oraConn, false, oracle.sql.CLOB.DURATION_SESSION);
// clob.putString(1, queryQdParaWayinfo());
//
// insertMyAnnouncement(VALID_WAYINFO_SENDER, curTime, VALID_WAYINFO_TITTLE, clob);//渠道资料缺失提醒推送
// }
if(!"".equals(queryQdSysNetpointuser())){
//将String类型转oracle.sql.CLOB类型插入到数据库
CLOB cb = oracle.sql.CLOB.createTemporary(oraConn, false, oracle.sql.CLOB.DURATION_SESSION);
cb.putString(1, queryQdSysNetpointuser());
insertQdSysNetpointuser(VALID_WAYINFO_SENDER, curTime, VALID_EMPLOYEE_TITTLE, cb);//营业员资料缺失提醒推送
}
System.out.println("===测试模块END==");
} catch (Exception e) {
e.printStackTrace();
} } /**
* 获取缺失的渠道资料的数据
* @throws SQLException
*/
private String queryQdParaWayinfo() throws SQLException { /**
* way.id-- id vc_wayacctname-- 渠道经理联系人 way.c_wayid-- 网点编号 vc_acctname--
* 银行帐户名 vc_acctbank-- 开户银行 vc_wayacctno-- 银行帐号 dept_sx1-- 渠道属性
* c_accttype-- 帐户类型 si_chain-- 店铺属性 c_type-- 连锁属性 dept_sx3-- 星级
* way.manager_name--渠道经理
*/
String msg = "";
String msgs = ""; PreparedStatement ps = null;
ResultSet rs = null; String sql = "select way.id, "
+ " NVL(way.vc_wayacctname, ' ') AS vc_wayacctname, "
+ " NVL(way.c_wayid, ' ') AS c_wayid, "
+ " NVL(way.vc_acctname, ' ') AS vc_acctname, "
+ " NVL(way.vc_acctbank, ' ') AS vc_acctbank, "
+ " NVL(way.vc_wayacctno, ' ') AS vc_wayacctno, "
+ " NVL(way.dept_sx1, ' ') AS dept_sx1, "
+ " NVL(way.c_accttype, ' ') AS c_accttype,"
+ " NVL(way.si_chain, -9) AS si_chain, "
+ " NVL(way.c_type, ' ') AS c_type, "
+ " NVL(way.dept_sx3, ' ') AS dept_sx3, "
+ " NVL(way.manager_name, ' ') AS manager_name "
+ " from qd_para_wayinfo way where regexp_like(way.c_wayid,'QD[0-9]{6}') and way.si_waystate = 1 ";
System.out.println("sql......"+sql);
try {
ps = oraConn.prepareStatement(sql);
rs = ps.executeQuery(); while (rs.next()) { if ("".equals(rs.getString("vc_acctname").trim())) {
msg = msg + "银行帐户名为空,";
}
if ("".equals(rs.getString("vc_acctbank").trim())) {
msg = msg + "开户银行为空,";
}
if ("".equals(rs.getString("vc_wayacctno").trim())) {
msg = msg + "银行帐号为空,";
}
if ("".equals(rs.getString("dept_sx1").trim())) {
msg = msg + "渠道属性为空,";
}
if ("".equals(rs.getString("c_accttype").trim())) {
msg = msg + "帐户类型为空,";
}
if (rs.getInt("si_chain") == -9) {
msg = msg + "店铺属性为空,";
}
if (rs.getInt("si_chain") == 3
&& "".equals(rs.getString("c_type").trim())) {
msg = msg + "连锁属性为空,";
}if("".equals(rs.getString("c_wayid").trim())) {
msg = msg + "渠道编号为空";
}
if ("".equals(rs.getString("dept_sx3").trim())) {
msg = msg + "星级为空";
} if (!"".equals(msg)) { msgs = msgs + rs.getString("manager_name") + "|"
+ rs.getString("c_wayid") + "|" + msg+"|"; }
msg = "";
}
} catch (Exception e) {
e.printStackTrace();
}finally{
if(rs !=null){rs.close();}
if(ps !=null){ps.close();}
} return msgs;
}
/**
* 插入公告表 qd_anno_myAnnouncement
* @throws SQLException
* */
private boolean insertMyAnnouncement(long sender,Date send_time,String title,Clob cb) throws SQLException{ boolean flag = false;
PreparedStatement psInsert = null; SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try {
String sql =
"insert into qd_anno_myannouncement(id, sender , send_time , title , content ) " +
"select qd_anno_myannouncement_seq.nextval,? , ? , ? ,? from dual ";
psInsert = oraConn.prepareStatement(sql);
psInsert.setLong(1, sender); psInsert.setTimestamp(2, Timestamp.valueOf(sf.format(send_time))); psInsert.setString(3, title); psInsert.setClob(4, cb); int num = psInsert.executeUpdate(); if(num > 0){
flag = true; }
oraConn.commit();
} catch (Exception e) {
e.printStackTrace();
oraConn.rollback();
}finally{
if(psInsert !=null){psInsert.close();}
} return flag;
}

JDBC 操作插入表出现javax.sql.rowset.serial.SerialBlob cannot be cast to oracle.sql.BLOB的更多相关文章

  1. java.lang.ClassCastException: oracle.sql.CLOB cannot be cast to oracle.sql.CLOB

    错误现象: [framework] 2016-05-26 11:34:53,590 -INFO  [http-bio-8080-exec-7] -1231863 -com.dhcc.base.db.D ...

  2. JDBC操作简单实用了IOUtils

    package cn.itcast.demo4; import java.io.FileInputStream; import java.io.FileOutputStream; import jav ...

  3. JDBC 学习笔记(四)—— 自定义JDBC框架+Apache—DBUtils框架+事务管理+操作多表

    本文目录:       1.自定义JDBC框架 ——数据库元数据:DataBaseMetaData        2.自定义JDBC框架 ——数据库元数据:DataBaseMetaData       ...

  4. SQL批量插入表类 SqlBulkInsert

    ado.net已经有了sqlBulkCopy, 但是那个用xml格式,网络传输数据量太大. 自己实现了一个,传输尽量少的字节. 性能没对比过,有需要的自己拿去测试. using System.Data ...

  5. 《精通Oracle SQL(第2版) 》

    <精通Oracle SQL(第2版) > 基本信息 作者: (美)Karen Morton    Kerry Osborne    Robyn Sands    Riyaj Shamsud ...

  6. Oracle SQL执行缓慢的原因以及解决方案

     以下的文章抓哟是对Oracle SQL执行缓慢的原因的分析,如果Oracle数据库中的某张表的相关数据已是2亿多时,同时此表也创建了相关的4个独立的相关索引.由于业务方面的需要,每天需分两次向此表中 ...

  7. Tools - Oracle SQL Developer

    Oracle SQL Developer Oracle公司出品的一个免费非开源的用以开发数据库应用程序的图形化工具. 可以浏览数据库对象.运行SQL语句和脚本.编辑和调试PL/SQL语句,也可以创建执 ...

  8. JDBC操作数据库,第一:jsp插入mysql数据库,坎坷摸索分享

    JSP连接数据库,坎坷摸索了好久,现在终于做好了,分享一下,希望对更多热爱编程学习的人有所帮助!!!谢谢 第一:首先准备的就是已经安装好Mysql,这里不做多叙述,百度可以做到. 然后在mysql数据 ...

  9. jdbc mysql crud dao模型 sql注入漏洞 jdbc 操作大文件

    day17总结 今日内容 l JDBC 1.1 上次课内容总结 SQL语句: 1.外键约束:foreign key * 维护多个表关系! * 用来保证数据完整性! 2.三种关系: * 一对多: * 一 ...

随机推荐

  1. Tomcat 和 JVM 性能调优总结

    Tomcat性能调优: 找到Tomcat根目录下的conf目录,修改server.xml文件的内容.对于这部分的调优,我所了解到的就是无非设置一下Tomcat服务器的最大并发数和Tomcat初始化时创 ...

  2. git按需过滤提交文件的一个细节

    问题场景 用git管理代码时,作为git小白的我总会遇到一些无法理解的问题,在请教了一些高手后终于解开了疑惑,参考以下场景: 1.比如我们已在电脑1上完成用vs编辑项目.添加.提交到服务器的完整流程, ...

  3. mysql区分大小写问题

  4. linux下使用crontab新建定时任务

    我安装了一个全文搜索的插件,但是需要生成索引才能使用,但是不能手动生成索引,所以说呢,我就加了一个定时任务, 一.首先vim /etc/crontab 打开文件 我根据上面的提示加了用户名,但是看到其 ...

  5. 微信小程序前端坑

    链接:https://www.cnblogs.com/showMagic/p/7677551.html

  6. 【前端开发API】豆瓣开放API

    转载:https://www.cnblogs.com/HuangJie-sol/articles/10884622.html#_label6 阅读目录 前言 具体api 1.正在热映 2.即将上映 3 ...

  7. 树莓派安装raspbian并配置开发环境

    1.烧录系统 首先准备好我们要烧录的raspbian系统,可以在树莓派官网中下载https://www.raspberrypi.org/downloads/ 这里我们选择 2018-11-13-ras ...

  8. 获取自增长的id值

    单个: <insert id="create" parameterType="com.dto.Cou" useGeneratedKeys="tr ...

  9. SDNU_ACM_ICPC_2020_Winter_Practice_2nd

    A - [The__Flash]的矩阵 给你一个m×n的整数矩阵,在上面找一个x×y的子矩阵,使子矩阵中所有元素的和最大. Input输入数据的第一行为一个正整数T,表示有T组测试数据.每一组测试数据 ...

  10. Spring扫描组件的使用详解

    https://blog.csdn.net/you18131371836/article/details/53691044?utm_source=blogxgwz5