zoukankan      html  css  js  c++  java
  • 存储过程实例基于postgersql

    数据库用的是postgersql 数据库管理工具是DBeaver  mybatis操作数据库基于jdbcTemplate

    1.写的存储方法放在数据库下面的Procedures目录下

    function demo:

    CREATE OR REPLACE FUNCTION public.findshipmentorderid(orderid bigint)
     RETURNS bigint
     LANGUAGE plpgsql
    AS $function$  
            declare 
            tempId bigint;
            valueId bigint;
            finalId bigint;
            begin
                    tempId :=orderId;
    
                    loop 
                    select shipment_id into valueId from _order where id = tempId; 
                            if valueId is null then
                            --RAISE notice 'valueId is null, tempId: % ', tempId;
                            --RAISE notice 'valueId is null, valueId: % ', valueId;
    
                                    finalId := tempId;
                                    exit;
                            else 
                            --RAISE NOTICE 'tempId: % ', tempId;
                            --RAISE NOTICE 'valueId: % ', valueId;
                                    tempId := valueId;
                            end if;
                            
                    end loop;
                    return finalId;
    
            end
    
            
        $function$

    2.数据库里面有了存储function,在项目里面就直接可以调用了,调用方法如下:

    public long findShipmentOrderId(long orderId) {
            String sp = "select * from findShipmentOrderId (?)";
            return jdbcTemplate.queryForLong(sp, orderId);
        }
    jdbcTemplate用的是
    package org.springframework.jdbc.core.JdbcTemplate

    如此如此就可以上手了。

     
  • 相关阅读:
    如何做竞品分析报告
    软件架构入门
    系统内部矛盾的解决思路
    分表分库一
    Hbase随笔2
    Hbase随笔
    vertica在电信的应用
    理解RESTful架构
    百分点刘译璟
    数据产品的简介
  • 原文地址:https://www.cnblogs.com/cc-java/p/6640596.html
Copyright © 2011-2022 走看看