INSERT LOG ERRORS

 CREATE TABLE sales_overall as select * from sales where 1=0;

Table created.

SQL> exec dbms_errlog.create_error_log('sales_overall');

PL/SQL procedure successfully completed.

SQL> desc err$_sales_overall
Name                                                                          Null?    Type
----------------------------------------------------------------------------- -------- -------------------
ORA_ERR_NUMBER$                                                                        NUMBER
ORA_ERR_MESG$                                                                          VARCHAR2(2000)
ORA_ERR_ROWID$                                                                         ROWID
ORA_ERR_OPTYP$                                                                         VARCHAR2(2)
ORA_ERR_TAG$                                                                           VARCHAR2(2000)
PROD_ID                                                                                VARCHAR2(4000)
CUST_ID                                                                                VARCHAR2(4000)
TIME_ID                                                                                VARCHAR2(4000)
CHANNEL_ID                                                                             VARCHAR2(4000)
PROMO_ID                                                                               VARCHAR2(4000)
QUANTITY_SOLD                                                                          VARCHAR2(4000)
AMOUNT_SOLD                                                                            VARCHAR2(4000)

SQL> INSERT /*+ APPEND NOLOGGING PARALLEL */ INTO sales_overall
  2  SELECT * FROM sales_activity_direct
  3  LOG ERRORS INTO err$_sales_overall ( 'load_test1' );
INSERT /*+ APPEND NOLOGGING PARALLEL */ INTO sales_overall
*
ERROR at line 1:
ORA-29913: error in executing ODCIEXTTABLEFETCH callout
ORA-01722: invalid number
ORA-06512: at "SYS. ORACLE _LOADER", line 52


SQL> desc sales_activity_direct
Name                                                                          Null?    Type
----------------------------------------------------------------------------- -------- ----------------------------------------------------
PROD_ID                                                                                NUMBER
CUST_ID                                                                                NUMBER
TIME_ID                                                                                CHAR(20)
CHANNEL_ID                                                                             CHAR(2)
PROMO_ID                                                                               NUMBER
QUANTITY_SOLD                                                                          NUMBER(3)
AMOUNT_SOLD                                                                            CHAR(50)

SQL>
SQL> select count(*) from sales_overall;

  COUNT(*)
----------
         0

SQL> select count(*) from err$_sales_overall;

  COUNT(*)
----------
         1

SQL> select ORA_ERR_NUMBER$||
  2  ORA_ERR_MESG$||
  3  ORA_ERR_ROWID$||
  4  ORA_ERR_OPTYP$||
  5  ORA_ERR_TAG$||
  6  PROD_ID||
  7  CUST_ID||
  8  TIME_ID||
  9  CHANNEL_ID||
10  PROMO_ID||
11  QUANTITY_SOLD||
12  AMOUNT_SOLD msg
13  from err$_sales_overall;

MSG
--------------------------------------------------------------------------------------------------------------------------------------------
1722ORA-01722: invalid number
Iload_test11398720-FEB-09399911232,99


SQL> INSERT /*+ APPEND NOLOGGING PARALLEL */ INTO sales_overall
  2  SELECT * FROM sales_activity_direct
  3  LOG ERRORS INTO err$_sales_overall ( 'load_test2' ) REJECT LIMIT 10;
INSERT /*+ APPEND NOLOGGING PARALLEL */ INTO sales_overall
*
ERROR at line 1:
ORA-29913: error in executing ODCIEXTTABLEFETCH callout
ORA-01722: invalid number
ORA-06512: at "SYS.ORACLE_LOADER", line 52


SQL> select count(*) from err$_sales_overall;

  COUNT(*)
----------
        12

SQL> select count(*) from err$_sales_overall where ORA_ERR_TAG$= 'load_test2';

  COUNT(*)
----------
        11

SQL> commit;

Commit complete.

SQL> delete from err$_sales_overall;

12 rows deleted.

SQL> INSERT /*+ APPEND NOLOGGING PARALLEL */ INTO sales_overall
  2  SELECT * FROM sales_activity_direct
  3  LOG ERRORS INTO err$_sales_overall ( 'load_20040802' ) REJECT LIMIT UNLIMITED;

100 rows created.

SQL> commit;

Commit complete.

SQL>
SQL> select count(*) from sales_overall;

  COUNT(*)
----------
       100

SQL> select count(*) from err$_sales_overall;

  COUNT(*)
----------
     17845

SQL>
SQL> select distinct ora_err_number$ from err$_sales_overall;

ORA_ERR_NUMBER$
---------------
           1400
           1830
           1843
           1722

SQL> column ora_err_mesg$ format a80
SQL> select distinct ora_err_number$, ora_err_mesg$ from err$_sales_overall;

ORA_ERR_NUMBER$ ORA_ERR_MESG$
--------------- --------------------------------------------------------------------------------
           1400 ORA-01400: cannot insert NULL into ("SH"."SALES_OVERALL"."CUST_ID")
           1830 ORA-01830: date format picture ends before converting entire input string
           1400 ORA-01400: cannot insert NULL into ("SH"."SALES_OVERALL"."PROD_ID")
           1722 ORA-01722: invalid number
           1843 ORA-01843: not a valid month
回答: 当在Vue项目中出现未捕获的运行时错误时,可以通过设置Vue的全局错误处理来处理这些错误。在Vue的全局errorHandler中,可以对错误进行处理并输出错误信息。例如,可以使用console.log输出错误信息,并使用message.error显示错误提示。\[1\]这样可以避免在代码中到处写catch语句块来处理错误。另外,Vue项目中的错误主要来源于后端接口错误和Vue代码中的逻辑错误。对于后端接口错误,可以在axios中进行统一处理。对于Vue代码中的逻辑错误,可以使用Vue的全局错误处理来处理。\[2\]在使用vue-cli新建的Vue项目中,当出现编译错误或警告时,可以在浏览器中显示全屏覆盖。可以通过在vue.config.js中添加配置来解决这个问题,设置devServer的client.overlay为false即可。\[3\] #### 引用[.reference_title] - *1* *2* [Vue项目统一错误处理](https://blog.youkuaiyun.com/qq_38937669/article/details/112007111)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [vue项目中Uncaught runtime errors:怎样关闭](https://blog.youkuaiyun.com/qq_36877078/article/details/131175355)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值