银行数仓项目实战(六)--基础层(完成存款的明细表---宽表)

文章目录

  • 熟悉业务
  • 模型设计
  • 梳理映射关系
  • 加工宽表
  • 测试提交

FDM基础层:根据主题(需求),将源数据加工集成,形成业务明细表–宽表

熟悉业务

当我们的工作来到基础层,我们首先要做的是跟甲方沟通,要求甲方提供需求,同时我们应该熟悉数据字典,熟悉业务。

模型设计

模型设计(字段取数来源 字段加工规则 字段数据类型)

梳理映射关系

梳理映射关系:字段 源–目标的关系,字段的加工逻辑,表关联逻辑,过滤逻辑,伪代码。
我们做的项目是存款项目,需要梳理映射文档。以下是甲方提供的需求,我们需要从源数据中将对应的字段找出。
在这里插入图片描述
右边是甲方需要的字段,这些字段分布在两个表中,我们需要花时间找出他们来,最后找完的结果如下。
在这里插入图片描述
梳理完映射文档,我们需要建立明细表–宽表。

加工宽表

问甲方要建表语句

-- Create table
create table F_AGR_DEP_SAP_ACCT
(acct_no             VARCHAR2(10),curr_cd             VARCHAR2(20),curr_iden           VARCHAR2(1),acct_typ            VARCHAR2(30),pdp_cd              VARCHAR2(20),dep_typ             VARCHAR2(4),acct_char           VARCHAR2(40),cust_no             VARCHAR2(20),cust_name           VARCHAR2(100),ibd_typ             VARCHAR2(4),ibd_no              VARCHAR2(20),card_no             VARCHAR2(19),conntr_no           VARCHAR2(20),org_no              VARCHAR2(9),ases_org_no         VARCHAR2(9),opac_org_no         VARCHAR2(9),opac_amt            NUMBER(20,2),opac_dt             VARCHAR2(80),opac_perm_no        VARCHAR2(15),opac_trl_no         VARCHAR2(12),cacct_org_no        VARCHAR2(9),cacct_dt            VARCHAR2(80),cacct_trl_no        VARCHAR2(12),intc_flg            VARCHAR2(1),curr_char           VARCHAR2(1),aval_dt             VARCHAR2(80),cacl_dt             VARCHAR2(80),fs_sts              VARCHAR2(1),prds_instn_dpdw_flg VARCHAR2(1),drw_typ             VARCHAR2(4),int_tax_flg         VARCHAR2(1),acct_ctl_sts        VARCHAR2(50),dpdw_rang           VARCHAR2(1),com_od_flg          VARCHAR2(1),od_int_days_n       INTEGER,ddp_pdt             NUMBER(20,2),ddp_acct_sts        VARCHAR2(3),ddp_od_max          NUMBER(20,2),od_int_amt          NUMBER(20,2),frz_amt             NUMBER(20,2),intc_amt            NUMBER(20,2),avl_bal             NUMBER(20,2),acct_bal            NUMBER(20,2),int_bal             NUMBER(20,2),int_acct_no         VARCHAR2(32),ltm_pdtc_dt         VARCHAR2(80),ltm_intc_dt         VARCHAR2(80),ltm_tx_dt           VARCHAR2(80),actu_pdt            NUMBER(20,2),od_tm               INTEGER,od_pdt              NUMBER(20,2),od_amt              NUMBER(20,2),od_days             INTEGER,od_int              NUMBER(20,2),ovdln_od_int        NUMBER(20,2),od_lg_flg           VARCHAR2(1),today_od_csh_amt    NUMBER(20,2),ngo_dep_fl_totl     INTEGER,ngo_int_acct_no     VARCHAR2(32),ngo_aval_dt         VARCHAR2(80),ngo_cncl_dt         VARCHAR2(80),trt_val             NUMBER(12,6),svc_bal             NUMBER(20,2),od_csh_amt          NUMBER(20,2),intr_cod            VARCHAR2(2),intr                NUMBER(12,6),fltr_fvr_sign       VARCHAR2(1),fltr_fvr            NUMBER(12,6),sleep_dt            VARCHAR2(80),sleep_sts           VARCHAR2(2),less_intr_flg       VARCHAR2(1),mafe_flg            VARCHAR2(1),mafe_owe_amt        NUMBER(20,2),mafe_year           VARCHAR2(2),sleep_flg           VARCHAR2(1),insp_flg            VARCHAR2(1),risk_lvl            VARCHAR2(1),psbk_no             INTEGER,psbk_prt_no         VARCHAR2(13),etl_dt              DATE
);
-- Add comments to the columns 
comment on column F_AGR_DEP_SAP_ACCT.acct_nois '账号';
comment on column F_AGR_DEP_SAP_ACCT.curr_cdis '币种代码';
comment on column F_AGR_DEP_SAP_ACCT.curr_idenis '钞汇类别';
comment on column F_AGR_DEP_SAP_ACCT.acct_typis '账别';
comment on column F_AGR_DEP_SAP_ACCT.pdp_cdis '产品代码';
comment on column F_AGR_DEP_SAP_ACCT.dep_typis '存款种类';
comment on column F_AGR_DEP_SAP_ACCT.acct_charis '账号性质';
comment on column F_AGR_DEP_SAP_ACCT.cust_nois '客户编号';
comment on column F_AGR_DEP_SAP_ACCT.cust_nameis '客户姓名';
comment on column F_AGR_DEP_SAP_ACCT.ibd_typis '凭证种类';
comment on column F_AGR_DEP_SAP_ACCT.ibd_nois '凭证号码';
comment on column F_AGR_DEP_SAP_ACCT.card_nois '卡号';
comment on column F_AGR_DEP_SAP_ACCT.conntr_nois '联系人编号';
comment on column F_AGR_DEP_SAP_ACCT.org_nois '机构编号';
comment on column F_AGR_DEP_SAP_ACCT.ases_org_nois '考核机构';
comment on column F_AGR_DEP_SAP_ACCT.opac_org_nois '开户机构号';
comment on column F_AGR_DEP_SAP_ACCT.opac_amtis '开户金额';
comment on column F_AGR_DEP_SAP_ACCT.opac_dtis '开户日期';
comment on column F_AGR_DEP_SAP_ACCT.opac_perm_nois '开户许可证号';
comment on column F_AGR_DEP_SAP_ACCT.opac_trl_nois '开户柜员号';
comment on column F_AGR_DEP_SAP_ACCT.cacct_org_nois '销户机构号';
comment on column F_AGR_DEP_SAP_ACCT.cacct_dtis '销户日期';
comment on column F_AGR_DEP_SAP_ACCT.cacct_trl_nois '销户柜员号';
comment on column F_AGR_DEP_SAP_ACCT.intc_flgis '计息标志';
comment on column F_AGR_DEP_SAP_ACCT.curr_charis '钞汇属性';
comment on column F_AGR_DEP_SAP_ACCT.aval_dtis '起用日期';
comment on column F_AGR_DEP_SAP_ACCT.cacl_dtis '注销日期';
comment on column F_AGR_DEP_SAP_ACCT.fs_stsis '综合理财标志';
comment on column F_AGR_DEP_SAP_ACCT.prds_instn_dpdw_flgis '约定机构存取标志';
comment on column F_AGR_DEP_SAP_ACCT.drw_typis '支取方式';
comment on column F_AGR_DEP_SAP_ACCT.int_tax_flgis '利息税收税标志';
comment on column F_AGR_DEP_SAP_ACCT.acct_ctl_stsis '帐户控制状态';
comment on column F_AGR_DEP_SAP_ACCT.dpdw_rangis '通兑范围';
comment on column F_AGR_DEP_SAP_ACCT.com_od_flgis '法人账户透支标志';
comment on column F_AGR_DEP_SAP_ACCT.od_int_days_nis '应收透支息透支天数';
comment on column F_AGR_DEP_SAP_ACCT.ddp_pdtis '活存积数';
comment on column F_AGR_DEP_SAP_ACCT.ddp_acct_stsis '账户状态';
comment on column F_AGR_DEP_SAP_ACCT.ddp_od_maxis '账户最大透支额';
comment on column F_AGR_DEP_SAP_ACCT.od_int_amtis '计透支息金额';
comment on column F_AGR_DEP_SAP_ACCT.frz_amtis '冻结金额';
comment on column F_AGR_DEP_SAP_ACCT.intc_amtis '计息金额';
comment on column F_AGR_DEP_SAP_ACCT.avl_balis '可用金额';
comment on column F_AGR_DEP_SAP_ACCT.acct_balis '账户余额';
comment on column F_AGR_DEP_SAP_ACCT.int_balis '利息';
comment on column F_AGR_DEP_SAP_ACCT.int_acct_nois '收息账号';
comment on column F_AGR_DEP_SAP_ACCT.ltm_pdtc_dtis '上次计算积数日';
comment on column F_AGR_DEP_SAP_ACCT.ltm_intc_dtis '上次计息日';
comment on column F_AGR_DEP_SAP_ACCT.ltm_tx_dtis '上次交易日期';
comment on column F_AGR_DEP_SAP_ACCT.actu_pdtis '实积数';
comment on column F_AGR_DEP_SAP_ACCT.od_tmis '透支次数';
comment on column F_AGR_DEP_SAP_ACCT.od_pdtis '透支积数';
comment on column F_AGR_DEP_SAP_ACCT.od_amtis '透支金额';
comment on column F_AGR_DEP_SAP_ACCT.od_daysis '透支天数';
comment on column F_AGR_DEP_SAP_ACCT.od_intis '透支息';
comment on column F_AGR_DEP_SAP_ACCT.ovdln_od_intis '催收透支息';
comment on column F_AGR_DEP_SAP_ACCT.od_lg_flgis '透支科目标志';
comment on column F_AGR_DEP_SAP_ACCT.today_od_csh_amtis '当日累计透支取现金额';
comment on column F_AGR_DEP_SAP_ACCT.ngo_dep_fl_totlis '协议存款档数';
comment on column F_AGR_DEP_SAP_ACCT.ngo_int_acct_nois '协议收息账号';
comment on column F_AGR_DEP_SAP_ACCT.ngo_aval_dtis '协定存款设定日期';
comment on column F_AGR_DEP_SAP_ACCT.ngo_cncl_dtis '协定存款取消日期';
comment on column F_AGR_DEP_SAP_ACCT.trt_valis '税率';
comment on column F_AGR_DEP_SAP_ACCT.svc_balis '手续费';
comment on column F_AGR_DEP_SAP_ACCT.od_csh_amtis '累计透支取现金额';
comment on column F_AGR_DEP_SAP_ACCT.intr_codis '利率依据';
comment on column F_AGR_DEP_SAP_ACCT.intris '利率';
comment on column F_AGR_DEP_SAP_ACCT.fltr_fvr_signis '浮动利率加减码符号位';
comment on column F_AGR_DEP_SAP_ACCT.fltr_fvris '浮动利率加减码';
comment on column F_AGR_DEP_SAP_ACCT.sleep_dtis '睡眠设置日期';
comment on column F_AGR_DEP_SAP_ACCT.sleep_stsis '睡眠状态';
comment on column F_AGR_DEP_SAP_ACCT.less_intr_flgis '免执行小额利率标志';
comment on column F_AGR_DEP_SAP_ACCT.mafe_flgis '免收小额管理费标志';
comment on column F_AGR_DEP_SAP_ACCT.mafe_owe_amtis '小额管理费欠收金额';
comment on column F_AGR_DEP_SAP_ACCT.mafe_yearis '小额管理费扣收年份';
comment on column F_AGR_DEP_SAP_ACCT.sleep_flgis '不动户处理标志';
comment on column F_AGR_DEP_SAP_ACCT.insp_flgis '年检标志';
comment on column F_AGR_DEP_SAP_ACCT.risk_lvlis '风险等级';
comment on column F_AGR_DEP_SAP_ACCT.psbk_nois '册号';
comment on column F_AGR_DEP_SAP_ACCT.psbk_prt_nois '存单存折印刷号';

加工宽表 写存储过程,存储过程我们需要注意的是。
1.insert不能一条一条插入。需要使用select插入。插入的字段需要与刚刚建立的表字段相同顺序一致字段属性一致。
2.根据甲方提供的需求与项目主题,写出伪代码,

(SAACNAMT a left join SAACNACN b ona.FK_SAACN_KEY=b.SA_ACCT_NOwhere substr(a.SA_PDP_CODE,4,3)='SA1' and substr(b.SA_CUST_NO,1,1)='1')
UNION
(SAACNAMT a left join SAACNACN b ona.FK_SAACN_KEY=b.SA_ACCT_NOwhere substr(a.SA_PDP_CODE,4,3)='SA0')

根据伪代码写出存储过程,此处给出一个简略的存储过程

CREATE OR REPLACE PROCEDURE SP_F_AGR_DEP_SAP_ACCT  IS/*****************************************************************************程序名称:SP_F_AGR_DEP_SAP_ACCT功能描述:个人活期账户信息宽表目 标 表:FDM.F_AGR_DEP_SAE_ACCT  活期企业存款账户信息源    表:SDM.SAACNAMT  活存资金档SDM.SAACNACN  活期存款主档创 建 人:孙云龙创建日期:20240620修改日期:修改人员:修改原因:******************************************************************************//*存储过程变量定义*/V_STARTTIME DATE; --开始时间V_ENDTTIME DATE; --结束时间V_ROWCOUNT INT; --记录数V_SQLCODE  VARCHAR2(200);V_SQLERRM  VARCHAR2(1000);V_SPNAME VARCHAR2(200);/* 程序开始执行*/
BEGIN/*变量赋值*/V_STARTTIME:=sysdate;V_SPNAME:='SP_F_AGR_DEP_SAP_ACCT';/*插入宽表数据*/INSERT INTO FDS.F_AGR_DEP_SAP_ACCTSELECT a.FK_SAACN_KEY  ,-- a.SA_CURR_COD ,-- 币别a.SA_CURR_IDEN  ,-- 钞汇鉴别b.SA_ACCT_TYP ,-- 帐别2a.SA_PDP_CODE ,-- 产品代码b.SA_DEP_TYP  ,-- 存款种类b.SA_ACCT_CHAR  ,-- 帐户性质b.SA_CUST_NO  ,-- 客户编号b.SA_CUST_NAME  ,-- 客户名称b.SA_DOC_TYP  ,-- 凭证种类(DOC)b.SA_PSBK_PRT_NO1 ,-- 存折印刷号1b.SA_CARD_NO  ,-- 卡号(CARD)b.SA_CONNTR_NO  ,-- 联系人编号a.SA_BELONG_INSTN_COD ,-- 账户归属机构a.SA_ASES_INSTN_COD ,-- 考核机构b.SA_OPAC_INSTN_NO  ,-- 开户机构号(OPAC)b.SA_OPAC_AMT ,-- 开户金额b.SA_OPAC_DT  ,-- 开户日期-X8b.SA_OPAC_PERM_NO ,-- 开户许可证号b.SA_OPAC_TLR_NO  ,-- 开户柜员号b.SA_CACCT_INSTN_NO ,-- 销户机构号b.SA_CACCT_DT ,-- 销户日期(CACCT)b.SA_CACCT_TLR_NO ,-- 销户柜员号b.SA_INTC_FLG ,-- 计息标志b.SA_CURR_TYP ,-- 钞汇属性b.SA_AVAL_DT  ,-- 起用日期(AVAL)'18991231' ,-- b.SA_FS_STS ,-- 综合理财标志NULL ,-- b.SA_DRW_TYP  ,-- 支取方式b.SA_INT_TAX_FLG  ,-- 利息税计税标志b.SA_ACCT_CTL_STS ,-- 帐户控制状态b.SA_DW_RANG  ,-- 通兑范围a.SA_COM_OD_FLG ,-- 法人帐户透支标志a.SA_OD_INT_DAYS_N  ,-- 应收透支息透支天数a.SA_DDP_PDT  ,-- 活存积数a.SA_DDP_ACCT_STS ,-- 活存帐户状态a.SA_DDP_OD_MAX ,-- 活存帐户最大透支额a.SA_OD_INT_AMT ,-- 计透支息金额a.SA_FRZ_AMT  ,-- 法律冻结金额a.SA_INTC_AMT ,-- 贷方计息金额a.SA_AVL_BAL  ,-- 可用余额(AVL)a.SA_ACCT_BAL ,-- 帐户余额a.SA_INT  ,-- 利息(16位)a.SA_INT_ACCT_NO  ,-- 利息帐号a.SA_LTM_PDTC_DT  ,-- 上次计算积数日a.SA_LTM_INTC_DT  ,-- 上次计息日a.SA_LTM_TX_DT  ,-- 上次交易日期a.SA_ACTU_PDT ,-- 实积数a.SA_OD_TM  ,-- 透支次数a.SA_OD_PDT ,-- 透支积数(OD)a.SA_OD_AMT ,-- 透支金额a.SA_OD_DAYS_N  ,-- 透支天数a.SA_OD_INT ,-- 透支息(16位)a.SA_OVDLN_OD_INT ,-- 催收透支息(16位)a.SA_OD_LG_FLG  ,-- 透支科目标志a.SA_TODAY_OD_CSH_AMT ,-- 当日累计透支取现金额a.SA_NGO_DEP_FL_TOTL  ,-- 协议存款档数a.SA_NGO_INT_ACCT_NO  ,-- 协议利息帐号a.SA_NGO_AVAL_DT  ,-- 协定存款设定日期a.SA_NGO_CNCL_DT  ,-- 协定存款取消日期a.SA_TRT_VAL  ,-- 税率(VAL)a.SA_SVC  ,-- 手续费a.SA_OD_CSH_AMT ,-- 累计透支取现金额(CSH)a.SA_INTR_COD ,-- 利率代码a.SA_INTR ,-- 利率a.SA_FLTR_FVR_SIGN  ,-- 浮动利率加减码符号位a.SA_FLTR_FVR ,-- 浮动利率加减码(SC)a.SA_SLEEP_DATE ,-- 睡眠设置日期a.SA_SLEEP_STS  ,-- 睡眠状态a.SA_LESS_INTR_FLG  ,-- 免执行小额利率标志a.SA_MAFE_FLG ,-- 免收管理费标志a.SA_MAFE_OWE_AMT ,-- 管理费欠费金额a.SA_MAFE_YEAR  ,-- 管理费扣收年份b.SA_SLEEP_PROC_FLG ,-- 不动户处理标志b.SA_INSP_FLG ,-- 年检标志b.SA_RISK_LVL ,-- 风险等级b.SA_PSBK_NO  ,-- 存折册号b.SA_PSBK_PRT_NO ,  -- 存折印刷号a.etldtFROM SDS.SAACNAMT a left join SDS.SAACNACN b ona.FK_SAACN_KEY = b.SA_ACCT_NO --账号where substr(a.SA_PDP_CODE, 4, 3) = 'SA1' --产品编号 活期and substr(b.SA_CUST_NO, 1, 1) = '1' --1开头的客户编号 个人客户UNIONSELECT a.FK_SAACN_KEY  ,-- a.SA_CURR_COD ,-- 币别a.SA_CURR_IDEN  ,-- 钞汇鉴别b.SA_ACCT_TYP ,-- 帐别2a.SA_PDP_CODE ,-- 产品代码b.SA_DEP_TYP  ,-- 存款种类b.SA_ACCT_CHAR  ,-- 帐户性质b.SA_CUST_NO  ,-- 客户编号b.SA_CUST_NAME  ,-- 客户名称b.SA_DOC_TYP  ,-- 凭证种类(DOC)b.SA_PSBK_PRT_NO1 ,-- 存折印刷号1b.SA_CARD_NO  ,-- 卡号(CARD)b.SA_CONNTR_NO  ,-- 联系人编号a.SA_BELONG_INSTN_COD ,-- 账户归属机构a.SA_ASES_INSTN_COD ,-- 考核机构b.SA_OPAC_INSTN_NO  ,-- 开户机构号(OPAC)b.SA_OPAC_AMT ,-- 开户金额b.SA_OPAC_DT  ,-- 开户日期-X8b.SA_OPAC_PERM_NO ,-- 开户许可证号b.SA_OPAC_TLR_NO  ,-- 开户柜员号b.SA_CACCT_INSTN_NO ,-- 销户机构号b.SA_CACCT_DT ,-- 销户日期(CACCT)b.SA_CACCT_TLR_NO ,-- 销户柜员号b.SA_INTC_FLG ,-- 计息标志b.SA_CURR_TYP ,-- 钞汇属性b.SA_AVAL_DT  ,-- 起用日期(AVAL)'18991231' ,-- b.SA_FS_STS ,-- 综合理财标志NULL ,-- b.SA_DRW_TYP  ,-- 支取方式b.SA_INT_TAX_FLG  ,-- 利息税计税标志b.SA_ACCT_CTL_STS ,-- 帐户控制状态b.SA_DW_RANG  ,-- 通兑范围a.SA_COM_OD_FLG ,-- 法人帐户透支标志a.SA_OD_INT_DAYS_N  ,-- 应收透支息透支天数a.SA_DDP_PDT  ,-- 活存积数a.SA_DDP_ACCT_STS ,-- 活存帐户状态a.SA_DDP_OD_MAX ,-- 活存帐户最大透支额a.SA_OD_INT_AMT ,-- 计透支息金额a.SA_FRZ_AMT  ,-- 法律冻结金额a.SA_INTC_AMT ,-- 贷方计息金额a.SA_AVL_BAL  ,-- 可用余额(AVL)a.SA_ACCT_BAL ,-- 帐户余额a.SA_INT  ,-- 利息(16位)a.SA_INT_ACCT_NO  ,-- 利息帐号a.SA_LTM_PDTC_DT  ,-- 上次计算积数日a.SA_LTM_INTC_DT  ,-- 上次计息日a.SA_LTM_TX_DT  ,-- 上次交易日期a.SA_ACTU_PDT ,-- 实积数a.SA_OD_TM  ,-- 透支次数a.SA_OD_PDT ,-- 透支积数(OD)a.SA_OD_AMT ,-- 透支金额a.SA_OD_DAYS_N  ,-- 透支天数a.SA_OD_INT ,-- 透支息(16位)a.SA_OVDLN_OD_INT ,-- 催收透支息(16位)a.SA_OD_LG_FLG  ,-- 透支科目标志a.SA_TODAY_OD_CSH_AMT ,-- 当日累计透支取现金额a.SA_NGO_DEP_FL_TOTL  ,-- 协议存款档数a.SA_NGO_INT_ACCT_NO  ,-- 协议利息帐号a.SA_NGO_AVAL_DT  ,-- 协定存款设定日期a.SA_NGO_CNCL_DT  ,-- 协定存款取消日期a.SA_TRT_VAL  ,-- 税率(VAL)a.SA_SVC  ,-- 手续费a.SA_OD_CSH_AMT ,-- 累计透支取现金额(CSH)a.SA_INTR_COD ,-- 利率代码a.SA_INTR ,-- 利率a.SA_FLTR_FVR_SIGN  ,-- 浮动利率加减码符号位a.SA_FLTR_FVR ,-- 浮动利率加减码(SC)a.SA_SLEEP_DATE ,-- 睡眠设置日期a.SA_SLEEP_STS  ,-- 睡眠状态a.SA_LESS_INTR_FLG  ,-- 免执行小额利率标志a.SA_MAFE_FLG ,-- 免收管理费标志a.SA_MAFE_OWE_AMT ,-- 管理费欠费金额a.SA_MAFE_YEAR  ,-- 管理费扣收年份b.SA_SLEEP_PROC_FLG ,-- 不动户处理标志b.SA_INSP_FLG ,-- 年检标志b.SA_RISK_LVL ,-- 风险等级b.SA_PSBK_NO  ,-- 存折册号b.SA_PSBK_PRT_NO,   -- 存折印刷号a.etldtFROM SDS.SAACNAMT aleft join SDS.SAACNACN bon a.FK_SAACN_KEY = b.SA_ACCT_NOwhere substr(a.SA_PDP_CODE, 4, 3) = 'SA0'; --个人活期 2020年之前V_ROWCOUNT:=sql%rowcount;  --获取上一条dml语句执行条数commit;V_ENDTTIME:=sysdate; --结束时间--游标  显式游标  定义  打开  遍历   关闭--隐式游标  dml语句--4个属性: found  notfound  isopen  游标名%rowcount/*插入正常日志*/insert into splogvalues (V_SPNAME,NULL,NULL,V_STARTTIME,V_ENDTTIME,V_ROWCOUNT,'正常' );commit; /* 异常处理 */
EXCEPTIONWHEN OTHERS THEN --捕获系统所有异常V_SQLCODE:=sqlcode;V_SQLERRM:=sqlerrm;/*插入异常日志*/insert into splogvalues (V_SPNAME,V_SQLCODE,V_SQLERRM,V_STARTTIME,V_ENDTTIME,0,'异常' );commit;
END;

在实际运行中,一般都是挂后台的,如果出错误我们没法看到实际的错误报告,因此我们需要将运行记录写进运行日志里,我们的运行日志需要获取以下信息,确保我们跑批结束后能及时发现并且定位错误信息。
存储过程名: V_SPNAME
错误代码: V_SQLCODE
错误信息: V_SQLERRM
存储过程开始时间: V_STARTTIME
存储过程结束时间: V_ENDTTIME
执行任务条数: V_ROWCOUNT
运行状态: ‘正常/异常’

测试提交

使用debug确定存储过程的每一步都没有出错即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/31160.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Harmony设计模式-单例模式

Harmony设计模式-单例模式 前言 软件设计模式([Design pattern](https://baike.baidu.com/item/Design pattern/10186718?fromModulelemma_inlink)),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经…

动态网页制作技术

动态网页制作技术是一种利用脚本语言、数据库和服务器端程序来生成动态内容的网页技术。以下是常用的动态网页制作技术: 1.PHP:PHP是一种广泛使用的服务器端脚本语言,可以嵌入到HTML中,用于生成动态网页内容。它可以与各种数据库进…

前端调试技巧

1、利用console打印日志 2、利用debugger关键字,浏览器f12调用到方法debugger处会断点住,可以利用浏览器调试工具查看变量 a.监视表达式可以添加想要观察的变量 b.调用堆栈可以观察方法调用链 3、xhr断点 请求地址包含v1.0/banner_theme/pagelist&a…

中科大和字节AI视频生成CamTrol杀疯了!运动可控,效果惊艳!

大家好,我是阿潘,今年堪称视频生成的爆发的一年,sora 2024年2月15日发布,让全世界都震惊了。openai 有一次成为了行业标杆。从生成的效果来看,比起以往抽象的生成结果,有了巨大的提升。 今天和大家分享中科…

DevExpress WPF中文教程:Grid - 如何将更改发布到数据库(设计时)?

DevExpress WPF拥有120个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…

c++设计模式之一创建型模式

1、创建型模式(常见的设计模式) Factory 模式(工厂模式,被实例化的子类) 在面向对象系统设计中经常可以遇到以下的两类问题: 下面是第一类问题和代码示例:我们经常会抽象出一些类的公共接口以…

解决数据丢失问题的MacOS 数据恢复方法

每个人都经历过 Mac 硬盘或 USB 驱动器、数码相机、SD/存储卡等数据丢失的情况。我们中的一些人可能认为已删除或格式化的数据将永远丢失,因此就此作罢。对于 macOS 用户来说,当文件被删除时,垃圾箱已被清空,他们可能不知道如何恢…

pytorch lighting: Trying to resize storage that is not resizable

问题 在用pytorch lighting进行训练时碰到如下错误 即 Trying to resize storage that is not resizable 。 解决方案 在dataloader采样图片以及label时,保证每次采样的图片的分辨率不变。

Mistral AI 发布 Codestral-22B,精通 80+ 编程语言,22B 参数超越 70B Code Llama

前言 大型语言模型 (LLM) 在代码生成领域展现出巨大的潜力,但现有的模型在支持的编程语言数量、生成速度和代码质量方面仍存在局限性。法国 AI 独角兽 Mistral AI 近期发布了其首款代码生成模型 Codestral-22B,宣称在多项指标上超越了 GPT-4 和 Llama3&…

健康与生活助手:Kompas AI的高效应用

一、引言 在现代社会,随着生活节奏的加快和工作压力的增加,人们的健康问题日益凸显。健康管理已经成为每个人关注的重点。Kompas AI作为一款智能助手,通过其先进的人工智能技术,为用户提供全面的健康管理服务,帮助用户…

JavaSE 利用正则表达式进行本地和网络爬取数据(爬虫)

爬虫 正则表达式的作用 作用1:校验字符串是满足规则 作用2:在一段文本中查找满足需要的内容 本地爬虫和网络爬虫 Pattern类 表示正则表达式 Matter类 文本编译器,作用按照正则表达式的规则去读取字符串,从头开始读取&#xf…

【idea】gradle多模块构建项目内存溢出终止问题解决

背景 idea构建多模块项目,构建报错 Daemon is stopping immediately JVM garbage collector thrashing and after running out of JVM memory 解决 进到下图目录下 在文件管理中进入上面目录添加gradle.properties文件,内容如下 org.gradle.jvmargs-…

hive on spark 的架构和常见问题 - hive on spark 使用的是 yarn client 模式还是 yarn cluster 模式?

hive on spark 的架构和常见问题 - hive on spark 使用的是 yarn client 模式还是 yarn cluster 模式? 1. 回顾下 spark 的架构图和部署模式 来自官方的经典的 spark 架构图如下: 上述架构图,从进程的角度来讲,有四个角色/组件&…

【面试干货】抽象类与接口的区别

【面试干货】抽象类与接口的区别 💖The Begin💖点点关注,收藏不迷路💖 在Java编程中,抽象类和接口是两个非常重要的概念,它们都为代码的可扩展性和复用性提供了基础。但是,它们之间也有一些明显…

maxwell源码编译安装部署

目录 1、组件环境 2、maxwell安装前提 3、maxwell安装 3.1、maxwell下载 3.1.1、最新版本下载 ​编辑 3.1.2、历史版本下载 3.2、maxwell安装 3.3、maxwell配置 3.2.1、mysql开启binlog 3.3.2、maxwell元数据配置 3.3.3、maxwell配置任务 4、maxwell部署问题 4.1、utf…

django学习入门系列之第三点《CSS基础样式介绍1》

文章目录 高度和宽度块级标签|行内标签的转换字体和颜色往期回顾 高度和宽度 如果在块级标签内,单独定义高度的话,宽度会默认拉满 使用百分比的时候 如果是块级标签,宽度可以用百分比,高度用不了(使用起来没效果&…

Mac OS 安装frida

安装frida和frida-tools Python是基础,提前装好Python 终端执行 python3 -m pip install frida 如果出现error 按照提示处理 信息提示:brew install pipx 于是终端执行: brew install pipx 安装frida: pipx install frida…

VMware ESXi 8.0U2c macOS Unlocker OEM BIOS Huawei (华为) FusionServer 定制版

VMware ESXi 8.0U2c macOS Unlocker & OEM BIOS Huawei (华为) FusionServer 定制版 ESXi 8.0U2 标准版,Dell (戴尔)、HPE (慧与)、Lenovo (联想)、Inspur (浪潮)、Cisco (思科)、Hitachi (日立)、Fujitsu (富士通)、NEC (日电)、Huawei (华为)、xFusion (超聚…

前端vue实战项目结构、常用编辑器vs code 配置

5.Complete JSDoc Tags 6.Custom CSS and JS Loader 7.Debugger for Chrome 8.EditorConfig for VS Code 9.ESLint ☆☆☆ 10.gitignore 11.GitLens — Git supercharged 12.npm 13.PostCSS syntax !important 14.Vetur ☆ 15.vscode-icons 16.vue-i18n 17.Markdow…

2024年最值得推荐的10款免费数据可视化工具!

数据可视化之所以受欢迎,不仅因为它简化了我们查看繁杂数据的方式,还在于数据可视化可以加快我们获取数据信息的速度。但是对于初学者来说,使用数据可视化工具并不能够快速上手。因此本篇文章特意为大家列出了10款免费的数据可视化工具&#…