问题标签 [plsqldeveloper]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2852 浏览

oracle - to_date 函数 pl/sql

不知道为什么每当我使用例如输入 03-03-1990 运行此代码时,都会出现此错误。

0 投票
2 回答
2396 浏览

sql - 布尔数据类型大小并想打印它的值?

我想知道数据类型 boolean的大小,我使用了 VSIZE()函数,但它不适用于 boolean并且想要打印布尔值并将其存储到表中。请让我知道oracle如何存储布尔值,还有其他方法可以查看布尔变量的数据类型和值。 至少告诉我布尔值的大小

当我在 vsize() 中使用布尔值时出现此错误

错误“表达式类型错误”

0 投票
5 回答
289 浏览

oracle - 代码中没有正确连接零?

我试图在 PL/SQL 中反转一个数字。它工作正常,但是当我的号码包含任何 0 时,输出是意外的。例如:

0 投票
1 回答
747 浏览

plsql - &符号(主变量)之后的DOT(。)&考虑作为变量名的一部分?

我知道标题不太清楚。这是图片

我正在使用 &a 它正在将其视为 $a。, 在输出 &a 和 &a 中。给出相同的输出。以及为什么 &a 之后的单个 .(DOT) 没有给出错误,但是如果我们在 &a 之后放置任何字符、运算符或通配符会给出错误。

这是代码。

输出来了

0 投票
4 回答
267 浏览

plsql - FOR循环中的上限在循环中没有改变,为什么?

我正在尝试更改 For 循环中上限的值,但循环一直运行到开始时定义的上限。

根据逻辑循环应该是无限的,因为 v_num 的值总是比 i 提前一个,但是循环执行了 3 次。请解释

这是代码

0 投票
1 回答
553 浏览

plsql - 试图从我的模式中删除所有没有行的表?

我正在尝试删除架构中没有行的所有表,但是当我执行此代码时出现错误

0 投票
1 回答
8250 浏览

stored-procedures - 简单的 Oracle 存储过程获取无效对象错误

我正在尝试编写一个简单的 Oracle 存储过程:

但是,当我尝试通过在 PL/SQL Developer 命令窗口中发出来运行该过程时execute act.skeleton,我收到以下错误消息:

我试图在没有创建过程语句的情况下运行代码,它成功运行并显示输出。我已经尝试了两个CREATE OR REPLACE PROCEDURE IS&CREATE OR REPLACE PROCEDURE AS选项,但我仍然得到同样的错误。

我不确定这是否与我尝试执行过程的授权或可见性有关,或者是什么导致act.skeleton对象无效。我调查了错误的含义,它似乎通常是指程序中的编译错误,但由于我可以在没有程序声明的情况下运行代码,我猜声明部分是罪魁祸首。我只是不知道是什么原因造成的,我希望有人能够对此有所了解并为我指明正确的方向

谢谢,

阿什什

其他详情:

0 投票
2 回答
20937 浏览

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

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

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

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

在这个过程中,我想得到这个文件名的值,就像在 TEST147 中一样。当我写:

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

帮助表示赞赏。谢谢。

0 投票
1 回答
374 浏览

sql - sql 触发器错误:无效的规范

我正在创建一个触发器并收到一些错误,我无法理解。请任何人都可以帮助我。

0 投票
1 回答
1605 浏览

sql - PL/SQL 字符串操作

我需要将单个字符串的地址拆分为多个字符串。以下是将地址拆分为相应地址行的 pl/sql 过程的要求。该过程的参数是:

创建或替换过程 split_address (地址 in varchar2, al1 out varchar2, al2 out varchar2, al3 out varchar2, al4 out varchar2) is.... end;

  1. address 是一个 varchar2(250),它必须被分成 4 行 al1,al2,al3,al4 的每行 varchar2(100)。
  2. 地址包含换行符 CHR(10)。基于这些,必须进行拆分。
  3. 如果地址的长度小于或等于 100,则需要将整个地址放入第三个地址行 al3。
  4. 只有当地址长度超过 100 时,才需要进行拆分。
  5. 如果一行超过 100 个字符,则该行必须在中间或第 50 个位置附近通过分隔符“,”分成两行,并将该行的其余部分添加到第二个地址行
  6. 如果行数超过 4,则将每个段合并为一个地址行,最多 100 个字符,最多 4 个段
  7. 地址行 3 是强制输出。

让我举个例子。让地址为

'门 #nn
xxxxxxxxxx
XXXXXXXXXXXX
yyyy
YYYYYYYYY
Zip-NNNNNN
zzzzzzzzzzzzzzz
ZZZZZZZZZZZZZZZZZZZZ'

如果 this 的总长度 < 100 则必须直接放入 al3 中,不要拆分。如果地址长度超过 100,那么问题就来了。这个地址有 8 行,但必须做成 4 行,如

  1. '门 #nn xxxxxxxxxx XXXXXXXXXX yyyy' -> 最大长度 100
  2. 'YYYYYYYYYYYY Zip-NNNNNNN,zzzzzzzzzzzz' -> 最大长度 100
  3. 'zzzzzzzzzzz, ZZZZZZZZZZZZZZZZZZZZZ' -> 最大长度 100
  4. 'ZZZZZZ' -> 最大长度 100

系统是oracle-10g,我可以使用它的特性。问题很简单,但是将逻辑放入代码中有点困难。请提供一些提示。提前致谢。