标签: plsqldeveloper

在 Oracle 过程中的字符串中调用函数

我使用 Oracle 10g 编写一个应用程序。

我目前面临这个问题。我将“文件名”作为 varchar2 类型的参数。

文件名可能包含的示例值是:'TEST || to_char(sysdate, 'DDD')'.

在该过程中,我想获取该文件名的值,如 TEST147 中所示。当我写:

select filename
into ffilename
from dual;
Run Code Online (Sandbox Code Playgroud)

我得到值 ffilename = TEST || to_char(sysdate, 'DDD') 这是有道理的。但是我怎样才能解决这个问题并调用字符串值中的函数呢?

帮助表示赞赏。谢谢。

oracle plsql dynamic-sql oracle10g plsqldeveloper

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

Oracle SQL,SELECT子句使用&输入

我有一个非常简单的查询

SELECT id FROM table where ID in &data
Run Code Online (Sandbox Code Playgroud)

当我运行此SQL时,系统会提示您键入一些值&data.

我希望能够使用它来选择几个id.ie&data ="11,12,13"

但后来我收到了一个错误ORA-00933.

我试过:

11,12,13
'11,12,13' -> ORA-01722
'11','12','13'
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

sql oracle plsqldeveloper

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

在PL/SQL中列出过程参数

我可以通过查询dba_procedures来检索所有过程的列表.但是我只能提取过程名称.但我也需要他们的参数.

现在,我知道我可以通过查询all_source表来访问"当前用户可访问的存储对象的文本源".

但是有没有其他方法来检索过程的参数?

oracle plsql plsqldeveloper

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

如何在 PL/SQL Developer 中轻松检查函数的返回值

完全是数据库新手。现在我创建了一个返回 NUMBER 的函数,我只想检查这个函数的结果。我使用的工具是 PL/SQL Developer,但我找不到输出窗口或其他任何东西。当然,在这种情况下,我不想在任何表中写入任何内容。作为 C++/C# 开发人员,我发现学习如何开发 PL/SQL 有点困难。我什至不能轻易看到我的函数的编译错误。

oracle plsql oracle11g plsqldeveloper

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

条件编译 PL/SQL

有人可以解释一下 PL/SQL 中条件编译的概念吗?我已经研究过,但不太明白使用它背后的原因以及它的实际作用。举个例子就太好了!

另外,我想了解更多有关条件编译控制令牌的信息。PL/SQL 中的令牌是什么?

预先感谢您的帮助。

oracle plsql plsqldeveloper

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

如何创建递归查询来获取两个日期之间的所有日期

我想获取两个日期arrival date和之间的所有日期leaving date

我尝试了递归查询,但没有成功。

;with dates as ( 
SELECT GuestID, ArrivalDate as reserveddate 
from dbo.Guest 
union all 
SELECT GuestID, dateadd (day,1,dbo.Guest. ArrivalDate) as reserveddate 
from dbo.Guest 
where dateadd (day,1,dbo.Guest. ArrivalDate) <dbo.Guest.leavingate
) 

SELECT * 
from dates 
option (maxrecursion 0)
Run Code Online (Sandbox Code Playgroud)

sql database sql-server plsqldeveloper

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

Oracle 中的 UTF-8 字符

我想使用 INSERT 语句在 Oracle 12 数据库中插入 UTF-8 字符。我正在使用 PL/SQL Developer Tool(版本 8)。

\n\n

当我运行此 INSERT 语句时

\n\n
INSERT INTO my_table (my_column) VALUES ('\xe1\x83\xa2\xe1\x83\x94\xe1\x83\xa5\xe1\x83\xa1\xe1\x83\xa2\xe1\x83\x98');\n
Run Code Online (Sandbox Code Playgroud)\n\n

然后运行 ​​SELECT 语句

\n\n
SELECT my_column FROM my_table\n
Run Code Online (Sandbox Code Playgroud)\n\n

它返回问号

\n\n
??????\n
Run Code Online (Sandbox Code Playgroud)\n\n

但是,当我将 UTF-8 文本手动(使用复制和粘贴)插入表中,然后运行相同的 SELECT 语句时,它会正确返回数据

\n\n
\xe1\x83\xa2\xe1\x83\x94\xe1\x83\xa1\xe1\x83\xa5\xe1\x83\xa2\xe1\x83\x98\n
Run Code Online (Sandbox Code Playgroud)\n\n

在使用 insert 语句插入 UTF-8 字符之前我应该​​运行任何命令吗?

\n

oracle encoding plsql utf-8 plsqldeveloper

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

Oracle云中IAM、IDCS和OCI的区别

我对这三个术语感到困惑。我所知道的OCI是Oracle提供的基础设施,IAM是用户,IDCS是身份云服务。但我不明白差异和术语。

Is IAM user and normal user are same?

is OCI and IDCS are same?

What exactly IDCS is?
Run Code Online (Sandbox Code Playgroud)

cloud oracle plsqldeveloper oracle-sqldeveloper oracle-cloud-infrastructure

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

FOR循环中的上限不会在循环中改变,为什么?

我试图改变For循环中上限的值,但循环运行直到在起始中定义的上限.

根据逻辑循环应该是无限的,因为v_num的值总是先于i,但循环执行三次.请解释

这是代码

    DECLARE
    v_num number:=3;
    BEGIN
        FOR i IN 1..v_num LOOP
           v_num:=v_num+1;
           DBMS_OUTPUT.PUT_LINE(i ||'  '||v_num);
     END LOOP;
    END;
Ouput Coming

    1  4
    2  5
    3  6
Run Code Online (Sandbox Code Playgroud)

plsql oracle9i plsqldeveloper

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

Oracle BLOB列读取

我有一个查询结果,其中定义了BLOB列.BLOB包含图像,我有兴趣在不使用任何类型的应用程序的情况下向其他人显示此结果.例如,查询返回三列: -


NAME => Steven
PHONE => 786
PICTURE => BLOB
有没有办法以任何导出格式检索/显示此BLOB,可能是Microsoft访问,Excel工作表,HTML或PDF.主题是获取此结果并显示此BLOB以及其他列,我可以选择仅使用PL/SQL和SQL.在这里我想补充说我正在使用HORA(保留工具)来导出我的查询结果.
我想要的是提取包含图像的查询.可能吗?

sql plsql blob plsqldeveloper oracle11gr2

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