小编mil*_*ros的帖子

如何创建异步Oracle作业以在多个实例中运行

我创建了下一个程序和后续的Oracle JOB:

BEGIN
   DBMS_SCHEDULER.create_program (program_name          => 'myProg',
                                  program_action        => 'myProc',
                                  program_type          => 'STORED_PROCEDURE',
                                  number_of_arguments   => 3,
                                  enabled               => FALSE);

   DBMS_SCHEDULER.DEFINE_PROGRAM_ARGUMENT (program_name        => 'myProg',
                                           argument_position   => 1,
                                           argument_type       => 'NUMBER');

   DBMS_SCHEDULER.DEFINE_PROGRAM_ARGUMENT (program_name        => 'myProg',
                                           argument_position   => 2,
                                           argument_type       => 'NUMBER');

   DBMS_SCHEDULER.DEFINE_PROGRAM_ARGUMENT (program_name        => 'myProg',
                                           argument_position   => 3,
                                           argument_type       => 'NUMBER',
                                           DEFAULT_VALUE       => NULL);

   DBMS_SCHEDULER.create_job ('myJob',
                              program_name   => 'myProg',
                              enabled        => FALSE,
                              comments       => 'Send data');

   DBMS_SCHEDULER.SET_ATTRIBUTE ('myJob', 'PARALLEL_INSTANCES', TRUE);
   DBMS_SCHEDULER.SET_ATTRIBUTE ('myJob',
                                 'logging_level',
                                 DBMS_SCHEDULER.LOGGING_FULL);
END;
/
Run Code Online (Sandbox Code Playgroud)

现在,我有一个用户可以运行/执行调用下一个过程的作业:

    PROCEDURE runJOB(param1   IN PLS_INTEGER,
                  param2 …
Run Code Online (Sandbox Code Playgroud)

oracle scheduler job-scheduling oracle12c

5
推荐指数
1
解决办法
2010
查看次数

PL\SQL XMLTable性能

我有一个解析XMLTYPE变量的函数,对于每个消息,为XMLTYPE变量中的每个标记附加一个具有特定结构的CLOB.像这样:

FUNCTION myFunc (px_Header      IN     VARCHAR2,
                                px_Block       IN     XMLTYPE,
                                pn_numLines      OUT PLS_INTEGER)
      RETURN CLOB
   IS
      lcl_return   CLOB := EMPTY_CLOB;
   BEGIN
      pn_numLines := 0;

      FOR item
         IN (          SELECT RPAD (NVL (RECEIPTNUMBER, ' '), 20) AS RECEIPTNUMBER,
                              RPAD (NVL (COMPANYCODE, ' '), 3) AS COMPANYCODE,
                              RPAD (NVL (BRAND, ' '), 3) AS BRAND,
                              RPAD (NVL (POLICYNUMBER, ' '), 20) AS POLICYNUMBER,
                              RPAD (NVL (CLAIMNUMBER, ' '), 20) AS CLAIMNUMBER,
                              RECEIPTAMOUNT
                                 AS receiptAmount
                         FROM XMLTABLE (
                                 'INT_DATA/Item'
                                 PASSING px_Block
                                 COLUMNS RECEIPTNUMBER   VARCHAR2 …
Run Code Online (Sandbox Code Playgroud)

oracle plsql xmltype

4
推荐指数
1
解决办法
1539
查看次数

Oracle中的时区日期格式

我必须将SYSDATE日期转换为特定的日期格式。该格式必须是这样的:'2016-11-23T15:12:48Z'。我认为这是一种奇怪的日期格式,但是这是我的要求。

这必须是发送Web服务消息的日期。

在Oracle(12c或11g)中,我有一些功能可以转换这种特定格式的日期?谢谢。

sql oracle datetime

2
推荐指数
1
解决办法
7976
查看次数

SQL为什么不使用PK索引?

我有这个复杂的SQL查询:

  SELECT f1 (d1.prdecdde),
         f2 (d1.prdecdde),
         f3 (d1.prdecdde),
         f4 (1, d1.prdecdde, d1.prdenpol),
         d1.prdeisin,
         f6 (d1.prdecdde, a.POLIRCTB),
         NVL (a.poliagtb, a.poliagta),
         d1.prdedtpr,
         prdeticu
    FROM (  SELECT prdecdde,
                   prdenpol,
                   prdeano,
                   SUM (NVL (prdeval, 0)) valantes,
                   NULL valdepois,
                   prdedtpr,
                   prdeticu,
                   prdeisin
              FROM stat_pro_det
             WHERE     prdedprv = '20151101'
                   AND prdecdde IN (700,
                                    100,
                                    610,
                                    600,
                                    710,
                                    900,
                                    910)
                   AND prdeval > 0
          GROUP BY prdecdde,
                   prdenpol,
                   prdeano,
                   prdedtpr,
                   prdeticu,
                   prdeisin
          UNION ALL
            SELECT prdecdde,
                   prdenpol,
                   prdeano,
                   NULL,
                   SUM (NVL (prdeval, 0)) valdepois,
                   prdedtpr,
                   prdeticu,
                   prdeisin …
Run Code Online (Sandbox Code Playgroud)

sql oracle indexing

1
推荐指数
1
解决办法
74
查看次数

Oracle DB中XMLTYPE列中的XML编码

我有一个这样创建的表:

create table b (data timestamp, value XMLTYPE);
Run Code Online (Sandbox Code Playgroud)

我在TOAD 12.6中运行此脚本以将XML存储在表中。

DECLARE
    lc_Soap         CLOB;
    lc_Request      CLOB;
    px_RequestXML   XMLTYPE
        := XMLTYPE ('<test><test1>ABDDÇJJSõ</test1></test>');
BEGIN
    DELETE b;

    lc_Soap :=
        '<?xml version="1.0" encoding="ISO-8859-1"?>
               <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
                  <s:Header>
                      <h:AxisValues xmlns="urn:/microsoft/multichannelframework/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:h="urn:/microsoft/multichannelframework/">
                          <User xmlns="">TEST</User>
                      </h:AxisValues>
                  </s:Header>
                  <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
                      <substr/>
                  </s:Body>
              </s:Envelope>';

    lc_Request :=
        pkg_utils.replace_clob (lc_Soap,
                                '<substr/>',
                                xml_utils.XMLTypeToClob (px_RequestXML));

    px_RequestXML := XMLTYPE.createXML (lc_Request);

    INSERT INTO b
         VALUES (SYSTIMESTAMP, px_RequestXML);

    COMMIT;
END;
Run Code Online (Sandbox Code Playgroud)

当我尝试查看VALUE列中的内容时,得到了这种编码UTF-8

<?xml version="1.0" encoding="UTF-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Header>
    <h:AxisValues xmlns="urn:/microsoft/multichannelframework/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:h="urn:/microsoft/multichannelframework/"> …
Run Code Online (Sandbox Code Playgroud)

xml oracle toad character-encoding oracle12c

1
推荐指数
1
解决办法
2932
查看次数