标签: plsqldeveloper

PLSQL从XML读取值?

我有一个带有XML代码的字符串,我想从PL/SQL中将一个值提取到一个变量中.

XML非常简单,与此不同:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body>
        <SOAProxyResponse xmlns="http://tempuri.org/">
            <SOAProxyResult>
                There is 23142 Files!
            </SOAProxyResult>
        </SOAProxyResponse>
    </s:Body>
</s:Envelope
Run Code Online (Sandbox Code Playgroud)

我怎样才能将上面例子中的" 有23142个文件! " 这个值变成一个变量?

xml plsql plsqldeveloper

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

PL/SQL开发人员导入转储

我有一个包含两个表的转储文件.现在我需要导入这个转储文件.我被指示在beforehands之前创建两个表空间.现在如何将此转储文件导入这些表空间.我正在使用PL/SQL开发人员.

oracle dump tablespace plsqldeveloper

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

如何在动态sql(ORACLE PLSQL)中的本地临时变量中获取count(*)值

我想count(*)在动态plsql语句中获得价值.我们可以编写静态stmt:

select count(*) into tmp_cnt from table_info where nbr_entry='0123456789';
Run Code Online (Sandbox Code Playgroud)

但是如何tmp_cnt在编写动态sql stament时获得价值?或任何其他方式将count(*)价值变为tmp_cnt变量?

oracle plsql plsqldeveloper

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

Oracle - 创建表没有并行选项

出于某种原因,当我在一个大表(4000万〜记录)上尝试CTAS(创建表为select)时,我在v $ session 18中看到了我的sql语句的活动会话.

当我试图暗示优化器使用更少的CPU时

create table table_name parallel (degree 2) as 
       select * from large_table;
Run Code Online (Sandbox Code Playgroud)

我看到6个活跃的会话.

学位3我看到8个活跃的课程.我尝试了学位默认,但它也创造了18个课程.

以前在代码中,在执行CREATE TABLE语句之前,我在会话中更改了一些属性:

alter session set workarea_size_policy = manual;
alter session set hash_area_size = 1048576000;
Run Code Online (Sandbox Code Playgroud)

我想在1个会话中创建表,我该怎么做?

谢谢 !

oracle plsql plsqldeveloper oracle-sqldeveloper

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

在plsql中使用for循环更新

我有更新问题并插入下面的列.请告知此事.

这是输入

depnto   extra    comm
----------------------------
20       300      NULL
20       300      400
20       NULL     NULL
20       500      NULL
Run Code Online (Sandbox Code Playgroud)

这是预期的产出

depnto  Extra    comm
---------------------
20      300      300
20      300      400
20      NULL     NULL           
20      500      500
Run Code Online (Sandbox Code Playgroud)

我需要在以下条件下comm使用extra列更新列.

  • 如果comm为null,则将额外值更新为comm.
  • 如果comm不为null,则无需更新,
  • 如果两者都为null,则保留为null,
  • 如果comm列有一个值,则无需覆盖.

我的节目如下.即使我需要跟踪哪些行已更新以及哪个值在另一个表中.

PROCEDURE (dept_id )
AS
BEGIN
   FOR r IN (SELECT *
               FROM emp
              WHERE comm IS NULL AND extra IS NOT NULL AND deptno = dept_id)
   LOOP
      UPDATE emp
         SET comm = extra
       WHERE comm IS …
Run Code Online (Sandbox Code Playgroud)

oracle plsqldeveloper

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

如何从 all_views 获取各个视图的总记录数

如何从 all_views 获取各个视图的总记录数。请找到以下代码以供参考..

Declare
view_name     VARCHAR2(200);
v_str          VARCHAR2 (1000);
v_output     VARCHAR2(4000);

CURSOR tbl IS
     SELECT view_name 
     FROM all_views
     WHERE OWNER = SYS_CONTEXT( 'USERENV', 'CURRENT_SCHEMA')
     ORDER BY 1 ;
BEGIN
OPEN tbl ;
     LOOP
     FETCH tbl INTO view_name;
     EXIT WHEN tbl%NOTFOUND;
          v_str := 'Select '''|| view_name ||'     '' || count (*) from ' || view_name ;
          EXECUTE IMMEDIATE v_str INTO v_output;

          DBMS_OUTPUT.PUT_LINE(v_output);
     END LOOP;
CLOSE tbl;
END;
Run Code Online (Sandbox Code Playgroud)

电流输出:

V_DSP_BUSINESS_DATE            10
V_DSP_DEPARTMENT               20
V_DSP_EMPLOYEE_DEACTIVATED     50
V_DSP_EMPLOYEE_GED             80
Run Code Online (Sandbox Code Playgroud)

预期输出:

sum up the record …
Run Code Online (Sandbox Code Playgroud)

oracle plsql plsqldeveloper

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

如何在PL/SQL Developer中保持连接?

我正在使用PL/SQL Developer 11.0.4.1774.在我的工作中,我需要整天使用数据库.有时,在30-60分钟内,我不使用ide,当我需要再次使用它时,它需要重新连接.

我不想重新连接,有没有办法让连接保持一整天?

oracle time session plsqldeveloper

6
推荐指数
2
解决办法
2万
查看次数

oracle中如何退出循环

Declare
var_cnt       number(3):=0;
begin
    loop
        update t_loan_dtl set loan_closure = 'Y' where rownum <10001;
    end loop;
end;
Run Code Online (Sandbox Code Playgroud)

plsql plsqldeveloper

6
推荐指数
2
解决办法
5万
查看次数

如何通过命令行向sql脚本传递参数

有一个要求,我试图在我的项目中自动化一个流程,其中需要运行 sql 来进行日常报告。

sql 如下所示:(这是最简单的形式,但我的 sql 有 400 行,下面只是获取结果的示例)。

测试.sql

select * from table
where create_date between &date1 and &date2;
Run Code Online (Sandbox Code Playgroud)

我想创建一个调用 sqlplus 并通过命令提示符传递日期的 bat 文件。日期将自动计算,并将在命令提示符本身中传递。

我尝试过以下命令行:

sqlplus userid/password@db_name @test.sql DATE1 DATE2
Run Code Online (Sandbox Code Playgroud)

但这仍然提示我输入日期 1 和日期 2 的日期,我希望自动从参数中获取这些日期。

您能帮我实现上述目标吗?

windows oracle plsql oracle11g plsqldeveloper

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

PL/SQL Developer的调试器不会进入程序的原因?

我正在尝试使用PL/SQL开发人员的内置调试器来调试过程.

单步执行后BEGIN,当调试器超过实际的过程调用时,"步入"按钮将执行该过程而不输入它.

任何建议,将不胜感激.

debugging plsql procedures step-into plsqldeveloper

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