gpt4 book ai didi

oracle - 在 SQL Developer 中打印变量的值

转载 作者:行者123 更新时间:2023-12-03 04:53:08 33 4
gpt4 key购买 nike

我想打印匿名 block 内特定变量的值。我正在使用 Oracle SQL Developer。我尝试使用dbms_output.put_line。但它不起作用。我正在使用的代码如下所示。

SET SERVEROUTPUT ON

DECLARE

CTABLE USER_OBJECTS.OBJECT_NAME%TYPE;
CCOLUMN ALL_TAB_COLS.COLUMN_NAME%TYPE;
V_ALL_COLS VARCHAR2(500);

CURSOR CURSOR_TABLE
IS
SELECT OBJECT_NAME
FROM USER_OBJECTS
WHERE OBJECT_TYPE='TABLE'
AND OBJECT_NAME LIKE 'tb_prm_%';

CURSOR CURSOR_COLUMNS (V_TABLE_NAME IN VARCHAR2)
IS
SELECT COLUMN_NAME
FROM ALL_TAB_COLS
WHERE TABLE_NAME = V_TABLE_NAME;

BEGIN

OPEN CURSOR_TABLE;

LOOP
FETCH CURSOR_TABLE INTO CTABLE;
EXIT WHEN CURSOR_TABLE%NOTFOUND;

OPEN CURSOR_COLUMNS (CTABLE);

V_ALL_COLS := NULL;

LOOP
FETCH CURSOR_COLUMNS INTO CCOLUMN;
V_ALL_COLS := V_ALL_COLS || CCOLUMN;
IF CURSOR_COLUMNS%FOUND THEN
V_ALL_COLS := V_ALL_COLS || ', ';
ELSE
EXIT;
END IF;
END LOOP;

DBMS_OUTPUT.PUT_LINE(V_ALL_COLS);

END LOOP;
CLOSE CURSOR_TABLE;

END;

并且我仅在匿名 block 完成时获得输出。

最佳答案

您需要打开 dbms_output。在 Oracle SQL Developer 中:

  1. 显示 DBMS 输出窗口(查看 -> DBMS 输出)。
  2. 按“Dbms 输出”窗口顶部的“+”按钮,然后在打开的对话框中选择一个打开的数据库连接。

在 SQL*Plus 中:

 SET SERVEROUTPUT ON

关于oracle - 在 SQL Developer 中打印变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7887413/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com