plsql相关内容

使用 Soundex、Jaro Winkler 和 Edit Distance (UTL_MATCH) 匹配 Oracle 重复列值

我正在尝试找到一种可靠的方法来匹配数据库中的重复人员记录.数据存在一些严重的数据质量问题,我也在努力解决这些问题,但在获得批准之前,我一直坚持使用现有数据. 我可用的表格列是: SURNAME VARCHAR2(43)FORENAME VARCHAR2(38)BIRTH_DATE 日期ADDRESS_LINE1 VARCHAR2(60)ADDRESS_LINE2 VARCHAR2(60)A ..
发布时间:2021-12-24 16:28:15 数据库

如何循环遍历 Oracle PLSQL 中的分隔列表

我正在研究一个 Oracle 过程,该过程在其中调用另一个过程.我的参数之一 (parm1) 可以在逗号分隔列表中包含一个或多个值.如何遍历这些值以将它们一次传递给另一个过程? 这是我希望它做的一个例子: 当 Parm1 = 123,312callProcedure2(123)callProcedure2(321) -或- 当 Parm1 123callProcedure2(123) ..
发布时间:2021-12-24 16:28:08 数据库

用SQL高效插入大量数据

您好,我经常需要向表中插入大量数据.例如,我会以 的形式从 excel 或文本文件中获取数据 1,a3、bsdf4、sdkfj5、东西129,其他 然后我在这个例子中经常构造6条insert语句并运行SQL脚本.我发现当我必须向服务器发送数千个小包时,这很慢,而且还会给网络带来额外的开销. 你最好的方法是什么? 更新:我使用的是 ORACLE 10g. 解决方案 使用 O ..
发布时间:2021-12-24 16:28:01 数据库

如何调用 Oracle PL/SQL 对象超级方法

我想调用一个重写的 PL/SQL 方法.举个例子: --超类创建或替换类型测试作为对象(n 号,成员过程 proc(SELF in out nocopy test, s varchar2))改变类型测试不是最终的/创建或替换类型主体测试是成员过程 proc(SELF in out nocopy test, s varchar2) 是开始dbms_output.put_line('test1: n ..
发布时间:2021-12-24 16:27:55 数据库

从存储过程,返回 OUT 参数 &OUT 光标 &解析结果 (Oracle)

问题:是否可以使用OUT返回: 两者:一个变量 &一个游标,来自我下面的代码 ?? 我看到了一个关于 SqlDB 的类似问题,但经过很长时间的搜索,没有找到 OracleDB 的解决方案. 在 PLSQL 中: 创建或替换过程 SPGETRESULTANDSETFLAG(pFilter VARCHAR2,pMaxRowCount VARCHAR2,pTableID RAW,my ..
发布时间:2021-12-24 16:27:45 C#/.NET

具有实时 PL/SQL 输出

是否可以实时获得来自 PL/SQL 的输出?我有一个非常大的包裹,运行了一个多小时,我想看看包裹在特定时间的位置. 无论如何,我目前使用一个日志表来做这件事,每次运行都会填满数百个日志描述,我只是好奇这是否可能. 谢谢! 解决方案 我不知道这是否正是您想要的,但我使用 dbms_application_info.set_module 来查看我的包在哪里. dbms_appli ..
发布时间:2021-12-24 16:27:40 数据库

关于 PL/SQL 包级记录类型的元数据

假设您有一个定义了 RECORD 类型的 PL/SQL 包: 创建或替换包 TEST_PACKAGE ASTYPE PERSON_RECORD_TYPE 是记录(名字 VARCHAR2(1000),姓氏 VARCHAR2(1000));结尾; 有没有办法获取TEST_PACKAGE.PERSON_RECORD_TYPE 中包含的字段列表?例如,是否有任何带有此信息的 ALL_* 视图? ..
发布时间:2021-12-24 16:27:36 数据库

使用 SELECT...FOR UPDATE OF 的 Oracle 锁定

我正在从表 FOO 和 BAR 中进行选择.我想锁定正在返回的FOO的记录,但我不想锁定BAR的记录. 光标 c_foobar 是选择 foo.*, bar.* from富,酒吧其中 foo.id = bar.foo_id更新 似乎我需要指定单个列,但我希望锁定 foo 的整个记录​​.例如我希望我能做这样的事情: 光标 c_foobar 是选择 foo.*, bar ..
发布时间:2021-12-24 16:27:29 数据库

哪些情况会导致 Oracle 软件包无效?

产生这个问题的场景: 我们有一个包是另一个包的依赖项,有时对“父"包进行更改会导致依赖包无效,但有时不会. 之前它让我们大吃一惊. 简单地了解导致失效的原因非常有用,这样我就可以预测/计划它. 解决方案 更改包所依赖的任何对象(例如表、视图、触发器、其他包)将自动将包标记为无效.正如上面的 tuinstoel 所指出的,Oracle 足够聪明,可以在第一次使用包时重新编译 ..
发布时间:2021-12-24 16:27:24 数据库

使用 `SELECT` 调用函数

我偶尔会遇到使用 SELECT...INTO...FROM DUAL 调用函数的例子 - 例如: SELECT some_function INTO a_variable FROM DUAL; 使用 代替 a_variable := some_function; 我对此的看法是,这不是一个好的做法,因为 A) 它不清楚正在调用一个函数,B) 它的效率低下,因为它强制从 PL/SQL 引擎 ..
发布时间:2021-12-24 16:27:10 数据库

Where 子句中的 if 语句

我正在处理一个在“WHERE"子句中包含“IF"语句的查询.但是 PL\SQL Developer 在执行时出现了一些错误.任何人都可以帮助我进行正确的查询吗?这是查询: SELECT t.first_name,t.last_name,t.employid,状态从员工表 tWHERE IF status_flag = STATUS_ACTIVE 然后 t.status = 'A'IF statu ..
发布时间:2021-12-24 16:27:05 数据库

Java 存储过程与 PL/SQL 存储过程

在Oracle DBMS中,性能更好,从另一个pl/sql存储过程调用java存储过程或从另一个pl/sql存储过程调用pl/sql存储过程. 顺便说一下,我的 pl/sql 过程中有一个循环会多次调用 java 过程(即我的代码在 PL/SQL 和 Java 存储过程之间切换),所以这会降低性能吗? 解决方案 从一种语言到另一种语言的任何切换都会涉及开销(它可能很小,但仍然存在). ..
发布时间:2021-12-24 16:26:57 数据库

如何转义 <、> 和 &Oracle PL/SQL 中 html 实体的字符

我需要直接从 oracle PL/SQL 包发送 HTML 电子邮件.这几乎可以正常工作. 我对从表中提取的某些数据包含诸如 、 和类似的片段的事实有疑问,这些片段有时被视为 HTML 标签,即使不是,它们也总是被忽略并且从不显示. 因此,我需要在插入电子邮件正文之前转义此列. 是否有自动将html特殊字符转义为实体的功能?还是我需要replace(' ..
发布时间:2021-12-24 16:26:53 数据库

如何增加 dbms_output 缓冲区?

我尝试通过 dbms_output 调试我的动态查询,但对于 dbms_output 缓冲区来说,查询字符串似乎太长了. 我得到了: ORA-06502:PL/SQL:数字或值错误:字符串缓冲区太小ORA-06512:在“SYS.DBMS_OUTPUT",第 148 行ORA-06512:在第 1 行 知道如何增加缓冲区大小吗? 解决方案 您可以启用 DBMS_OUTPUT 并设 ..
发布时间:2021-12-24 16:26:46 数据库

Oracle PLS-00363: 表达式 '' 不能用作赋值目标

你好,不知道为什么我会收到这个错误.基本上我在这三行中得到它: PLS-00363:表达式“p_temp_foo.editable.modified_by"不能用作赋值目标PLS-00363:表达式“p_temp_foo.editable.date"不能用作赋值目标PLS-00363:表达式“p_temp_foo.editable.modified_by"不能用作赋值目标 程序: PROC ..
发布时间:2021-12-24 16:26:39 数据库

PL/SQL 和 SQL 中 VARCHAR2 的最大大小是多少?

我使用的是 Oracle 10g.在要求中,我需要增加 pl/sql VARCHAR2 变量的大小.它已经是 4000 大小.我已阅读那 在 PL/SQL 中,VARCHAR2 可以达到 32767 字节.对于 SQL,限制是4000 字节 我可以增加这个变量的大小而不用担心 SQL 限制吗? 解决方案 查看官方文档(http://docs.oracle.com/cd/B193 ..
发布时间:2021-12-24 16:26:30 数据库

使用 Oracle PL/SQL developer 生成测试数据

我想测试一些模式和索引,我想知道 PL/SQL Developer 中是否有可以生成测试数据的功能(这样我就不必创建序列和循环来在表中插入数据). 解决方案 循环和 PL/SQL 并不总是必要的;这个技巧可能会有所帮助: 插入emp(id, name,salary)选择 rownum, '员工 ' ||to_char(rownum), dbms_random.value(2, 9) * ..
发布时间:2021-12-24 16:26:20 数据库

什么是 PL/SQL 开发的完美工具箱?

几个月以来,我参与了两个项目,其中包含大量 PL/SQL 代码. 然而,我没有找到任何真正有趣的工具来开发这种语言. 目前,我的配置包括以下工具: Eclipse (应用程序的其余部分是用 Java 开发的),使用 PL/SQL 编辑器插件 因为我真的不喜欢也不信任 Eclipse 的 PL/SQL 编辑器插件,所以我主要使用 PsPad用于编辑我的 PL/SQL 文件. S ..
发布时间:2021-12-24 16:26:11 数据库

如何从 Oracle PL/SQL 函数的现有表中返回记录?

我知道这似乎是一件基本的事情,但我以前从未这样做过. 我想从现有表中返回一条记录作为 Oracle PL/SQL 函数的结果.我已经找到了几种不同的方法来做到这一点,但我对最好的方法很感兴趣(阅读:我对我发现的东西并不满意). 我正在做的事情的要点是......我有一个名为“users"的表,我想要一个函数“update_and_get_user",它给出了一个用户名(以及有关所述用户 ..
发布时间:2021-12-24 16:26:02 数据库

PLSQL 中的反射?

我正在编写一个程序来处理存储在 ANYDATA 中的用户定义对象.对象类型和属性名称只能在运行时知道,因此我无法在声明部分为其定义 Viarable.在Java中,我可以使用反射来处理它,我可以知道类名和字段名.然后我可以通过反射访问这些字段.有没有办法在 PLSQL 中做到这一点?我现在的想法是在程序中动态创建一个 sql 字符串并执行它.但这不是我想要的. 假设,用户 A 定义了一个 A ..
发布时间:2021-12-24 16:25:53 数据库