创建存储过程

CREATE  procedure [dbo].[getdata_monitor_city_hour_hb]
@aaa varchar(50),
@test varchar(50) OUT
as
begin SET @test = '失败'; if not exists(select DATETIME FROM monitor_city_hour where city like 'hb%' and DATETIME =(select max(DATETIME) from monitor_site_hour where city like 'hb%'))
begin
insert into monitor_city_hour(DATETIME,so2,no2,pm10,co,o3_1,o3_8,pm25,city)
SELECT DATETIME
,round(avg(cast([so2] as float)),0) so2
,round(avg(cast([no2] as float)),0) no2
,round(avg(cast([pm10] as float)),0) pm10
,round(avg(cast([co] as float)),3) co
,round(avg(cast([o3_1] as float)),0) o3_1
,round(avg(cast([o3_8] as float)),0) o3_8
,round(avg(cast([pm25] as float)),0) pm25
,[city]
FROM monitor_site_hour
where DATETIME=(select max(DATETIME) from monitor_site_hour where city like 'hb%')
and city like 'hb%'
and so2!='—' and no2!='—'and pm10!='—'and co!='—'
and o3_1!='—' and o3_8!='—' and pm25!='—'
group by DATETIME,city;
SET @test ='成功';
end end ;

JAVA调用

Connection conn=JDBCUtilSingle.getInitJDBCUtil().getConnection();
conn.setAutoCommit(true);
PreparedStatement pst = null; //执行存储过程
CallableStatement proc=conn.prepareCall("{call getdata_monitor_city_hour_hb(?,?)}");
proc.setString(1, "aa");
proc.registerOutParameter(2, Types.VARCHAR);
proc.execute();
String testPrint = proc.getString(2);
System.out.println(new Date()+",hebeiDataJob,hb城市小时值,存储过程返回的值是:"+testPrint); // 批量入库完成,数据库连接关闭
JDBCUtilSingle.getInitJDBCUtil().closeConnection(pst, conn);

sqlserver存储过程创建和java调用的更多相关文章

  1. 存储过程详解与java调用(转)

    存储过程的一些基本语法: --------------创建存储过程----------------- CREATE PROC [ EDURE ] procedure_name [ ; number ] ...

  2. 创建并在项目中调用SQLSERVER存储过程的简单示例

    使用SQLSERVER存储过程可以很大的提高程序运行速度,简化编程维护难度,现已得到广泛应用.创建存储过程 和数据表一样,在使用之前需要创建存储过程,它的简明语法是: 引用: Create PROC ...

  3. java 调用 sql server存储过程

    Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这样就可以提高存储过程的性能. Ø ...

  4. java调用存储过程

    在做java调用sqlserver存储过程时遇到了各种各样的问题,不过在不懈的努力之下这些问题还是得以解决了.今天总结一下遇到的问题以及解决的方法. 首先调用存储过程的方法大家都很清楚: String ...

  5. Oracle存储过程创建及调用(转)

    在大型数据库系统中,有两个很重要作用的功能,那就是存储过程和触发器.在数据库系统中无论是存储过程还是触发器,都是通过SQL 语句和控制流程语句的集合来完成的.相对来说,数据库系统中的触发器也是一种存储 ...

  6. Java调用MySQL存储过程

    Java调用MySQL的存储过程,需要用JDBC连接,环境eclipse 首先查看MySQL中的数据库的存储过程,接着编写代码调用 mysql> show procedure status; + ...

  7. clob字段的值插入和查询N种方法【包括java调用存储过程传入clob参数】

    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import jav ...

  8. JAVA调用数据库存储过程

    下面将举出JAVA对ORACLE数据库存储过程的调用          ConnUtils连接工具类:用来获取连接.释放资源 复制代码 package com.ljq.test; import jav ...

  9. Java调用oracle存储过程通过游标返回临时表数据

    注:本文来源于 <  Java调用oracle存储过程通过游标返回临时表数据   > Java调用oracle存储过程通过游标返回临时表数据 项目开发过程中,不可避免的会用到存储过程返回结 ...

随机推荐

  1. CentOS6.7搭建部署FTP服务 (详解主配置文件)

    FTP传输 三种解析: username -->UID  :/etc/passwd    将用户名转换成UID的库. hostname--->        IP   :DNS服务,/et ...

  2. 详解CentOS6.7部署Tomcat及主配置文件

    Java程序实现部署及应用 POSIX :可移植操作系统,编程操作系统接口规范,实现跨平台编译运行. API:应用程序编程接口 ABI:应用程序二进制接口 描述了应用程序和操作系统之间,一个应用和它的 ...

  3. 打造好用的C++ IDE环境

    https://www.jianshu.com/p/1aa989808e15 这哥们说的也是极好,也可以这部分直接看他的示例! mingw-w64应该可以算是mingw的改进版本吧,mingw系列编译 ...

  4. vue.js生成横向拓扑图

    1.前端代码 <link href="https://magicbox.bk.tencent.com/static_api/v3/assets/bootstrap-3.3.4/css/ ...

  5. mysql关键字--设计表时要避开,否则回报语法错误

    https://dev.mysql.com/doc/refman/5.7/en/keywords.html#keywords-in-current-series Keywords and Reserv ...

  6. Blink示例程序

    打开Arduino IDE(话说与Processing IDE的UI好像啊 然后将这段代码输入.也可从文件>例子>01.Basics/Blink(File/Examples/01.Basi ...

  7. Numpy | 14 字符串函数

    本章函数用于对 dtype 为 numpy.string_ 或 numpy.unicode_ 的数组执行向量化字符串操作. 它们基于 Python 内置库中的标准字符串函数. 这些函数在字符数组类(n ...

  8. roughViz 一个可重用,功能强大的手绘图表组件

    前段时间介绍过一个chart.xkcd 的手绘图表组件,roughViz 是另外一个,同时也提供了 比较多的图表类型,api 参考文档也比较全 支持的图表类型 Bar Horizontal Bar D ...

  9. centos7安装pure-ftpd

    1.获取安装包 .tar.gz && cd pure-ftpd-1.0.47 ./configure --prefix=/usr/local/pureftpd --without-in ...

  10. oracle中union和union all区别与性能分析

    [ 概要 ] 经常写sql的同学可能会用到union和union all这两个关键词, 可能你知道使用它们可以将两个查询的结果集进行合并, 那么二者有什么区别呢? 下面我们就简单的分析下. [ 比较 ...