问题标签 [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.
oracle - to_date 函数 pl/sql
不知道为什么每当我使用例如输入 03-03-1990 运行此代码时,都会出现此错误。
sql - 布尔数据类型大小并想打印它的值?
我想知道数据类型 boolean的大小,我使用了 VSIZE()函数,但它不适用于 boolean并且想要打印布尔值并将其存储到表中。请让我知道oracle如何存储布尔值,还有其他方法可以查看布尔变量的数据类型和值。 至少告诉我布尔值的大小
当我在 vsize() 中使用布尔值时出现此错误
错误“表达式类型错误”
oracle - 代码中没有正确连接零?
我试图在 PL/SQL 中反转一个数字。它工作正常,但是当我的号码包含任何 0 时,输出是意外的。例如:
plsql - &符号(主变量)之后的DOT(。)&考虑作为变量名的一部分?
我知道标题不太清楚。这是图片
我正在使用 &a 它正在将其视为 $a。, 在输出 &a 和 &a 中。给出相同的输出。以及为什么 &a 之后的单个 .(DOT) 没有给出错误,但是如果我们在 &a 之后放置任何字符、运算符或通配符会给出错误。
这是代码。
输出来了
plsql - FOR循环中的上限在循环中没有改变,为什么?
我正在尝试更改 For 循环中上限的值,但循环一直运行到开始时定义的上限。
根据逻辑循环应该是无限的,因为 v_num 的值总是比 i 提前一个,但是循环执行了 3 次。请解释
这是代码
plsql - 试图从我的模式中删除所有没有行的表?
我正在尝试删除架构中没有行的所有表,但是当我执行此代码时出现错误
stored-procedures - 简单的 Oracle 存储过程获取无效对象错误
我正在尝试编写一个简单的 Oracle 存储过程:
但是,当我尝试通过在 PL/SQL Developer 命令窗口中发出来运行该过程时execute act.skeleton
,我收到以下错误消息:
我试图在没有创建过程语句的情况下运行代码,它成功运行并显示输出。我已经尝试了两个CREATE OR REPLACE PROCEDURE IS
&CREATE OR REPLACE PROCEDURE AS
选项,但我仍然得到同样的错误。
我不确定这是否与我尝试执行过程的授权或可见性有关,或者是什么导致act.skeleton
对象无效。我调查了错误的含义,它似乎通常是指程序中的编译错误,但由于我可以在没有程序声明的情况下运行代码,我猜声明部分是罪魁祸首。我只是不知道是什么原因造成的,我希望有人能够对此有所了解并为我指明正确的方向
谢谢,
阿什什
其他详情:
oracle - 在 Oracle 过程中调用字符串中的函数调用
我使用 Oracle 10g 编写应用程序。
我目前正面临这个问题。我将“文件名”作为 varchar2 类型的参数。
文件名可能包含的示例值是:'TEST || to_char(sysdate, 'DDD')'。
在这个过程中,我想得到这个文件名的值,就像在 TEST147 中一样。当我写:
我得到值 ffilename = TEST || to_char(sysdate, 'DDD') 这很有意义。但是我怎样才能解决这个问题并在字符串值中调用函数呢?
帮助表示赞赏。谢谢。
sql - sql 触发器错误:无效的规范
我正在创建一个触发器并收到一些错误,我无法理解。请任何人都可以帮助我。
sql - PL/SQL 字符串操作
我需要将单个字符串的地址拆分为多个字符串。以下是将地址拆分为相应地址行的 pl/sql 过程的要求。该过程的参数是:
创建或替换过程 split_address (地址 in varchar2, al1 out varchar2, al2 out varchar2, al3 out varchar2, al4 out varchar2) is.... end;
- address 是一个 varchar2(250),它必须被分成 4 行 al1,al2,al3,al4 的每行 varchar2(100)。
- 地址包含换行符 CHR(10)。基于这些,必须进行拆分。
- 如果地址的长度小于或等于 100,则需要将整个地址放入第三个地址行 al3。
- 只有当地址长度超过 100 时,才需要进行拆分。
- 如果一行超过 100 个字符,则该行必须在中间或第 50 个位置附近通过分隔符“,”分成两行,并将该行的其余部分添加到第二个地址行
- 如果行数超过 4,则将每个段合并为一个地址行,最多 100 个字符,最多 4 个段
- 地址行 3 是强制输出。
让我举个例子。让地址为
'门 #nn
xxxxxxxxxx
XXXXXXXXXXXX
yyyy
YYYYYYYYY
Zip-NNNNNN
zzzzzzzzzzzzzzz
ZZZZZZZZZZZZZZZZZZZZ'
如果 this 的总长度 < 100 则必须直接放入 al3 中,不要拆分。如果地址长度超过 100,那么问题就来了。这个地址有 8 行,但必须做成 4 行,如
- '门 #nn xxxxxxxxxx XXXXXXXXXX yyyy' -> 最大长度 100
- 'YYYYYYYYYYYY Zip-NNNNNNN,zzzzzzzzzzzz' -> 最大长度 100
- 'zzzzzzzzzzz, ZZZZZZZZZZZZZZZZZZZZZ' -> 最大长度 100
- 'ZZZZZZ' -> 最大长度 100
系统是oracle-10g,我可以使用它的特性。问题很简单,但是将逻辑放入代码中有点困难。请提供一些提示。提前致谢。