plsql相关内容

oracle pl/sql 结果成一个字符串

我正在尝试创建一个简单的存储过程,将查询结果存储到一个字符串中. v_string1 varchar2(100);选择第 1 列从双; 会回来 第 1 列--------啊啊啊bbbbcccc 我想将“aaaa、bbbb、cccc"存储到 v_string1 中.我能想到的只是一个光标......有没有更好的方法来处理这个问题? 解决方案 使用 SQL Fiddle: selec ..
发布时间:2021-12-24 16:16:00 数据库

PL/SQL VARRAY 的最大大小

我正在尝试找出 PL/SQL 中 VARRAY 可能的上限. 我们肯定可以将 VARRAY 类型定义为 TYPE type_name IS {VARRAY |VARYING ARRAY} (size_limit)OF element_type [非空]; Oracle 文档是这样说的: 每个 Varray 都存储为单个对象,或者在表中它是一列(如果 varray 小于 4KB)或在 ..
发布时间:2021-12-24 16:15:53 数据库

如何使用来自 C# ODP.NET 的 Oracle Ref Cursor 作为返回值参数,而不使用存储函数或过程?

我需要帮助了解我是否尝试使用 Ref Cursor 作为多个记录/值的返回值参数的方式,PL/SQL 只是 OracleCommand 对象的 CommandText 而不是存储过程或函数, 甚至是可能的. 如果这是不可能的,我想要做的是找到一种方法来发出 PL/SQL 语句,该语句将更新未知数量的记录(取决于与 WHERE 子句匹配的记录数),并返回 Id在 OracleDataReade ..
发布时间:2021-12-24 16:15:46 C#/.NET

如何将数组从 Java 返回到 PL/SQL?

我在 PL/SQL 和 Java 之间来回传递数字和字符串没有问题,但是我如何传递 数组?我正在从 PL/SQL 调用 Java - 而不是其他方式. 以下是 get_widgets_as_string 按预期工作的示例.我如何为 so19j.get_widgets_as_array() 编写 PL/SQL 调用规范,以便我可以从 PL/SQL 调用它? 我已阅读发布带有调用规范的 J ..
发布时间:2021-12-24 16:15:36 Java开发

如何在 Oracle 中将 CLOB 转换为 BLOB?

首先,我将图像的 BLOB 转换为 CLOB,然后将该 CLOB 转换回 BLOB.我看不到重新转换的图像.我该如何解决这个问题? blob_to_clob 函数: 创建或替换函数 blob_to_clob (blob_in IN BLOB) RETURN CLOB ASv_clob CLOB;v_varchar VARCHAR2(32767);v_start PLS_INTEGER := ..
发布时间:2021-12-24 16:15:28 数据库

是否可以在编码为带有 BOM 的 UTF-8 的文件上运行 SQLPLUS 脚本

我正在尝试运行从大量来源自动生成的脚本集合.不幸的是,其中一些已生成为带有 BOM 的 UTF-8.我有一个自动删除 BOM 的系统,但它的过程有点混乱. 未能移除 BOM 会产生错误: SP2-0042:未知命令“" - 其余行被忽略. 是否可以在具有 BOM 的脚本文件上运行 SQLPLUS? 解决方案 用这样的脚本运行 SQLPLUS 是可能的,但 SQLPLUS 会 ..
发布时间:2021-12-24 16:15:17 数据库

使用 CSV 文件中的值更新 Oracle 表

我有一个包含 ID 和其他几个列的 CSV 文件.我在 oracle 中也有一个表,其中 ID 标识了一行.我怎样才能最好地用 CSV 文件中的值替换表中的值,同时保持其他列的原样? 这必须使用 oracle 本身可用的工具(即 PL/SQL 或 SQL 脚本)来完成,我不能使用“真正的"脚本语言(Python,...)或“真正的"程序. > 谢谢,托马斯 解决方案 查看 Ora ..
发布时间:2021-12-24 16:15:09 数据库

Oracle 中 regexp_replace 与翻译的性能?

对于简单的事情,最好使用 translate 函数,前提是它占用的 CPU 更少,还是 regexp_replace 是要走的路? 这个问题来自如何在 Oracle REGEXP_REPLACE 函数中将括号替换为连字符? 解决方案 我认为您遇到了简单的优化问题.regexp 表达式的计算成本非常高,结果被缓存,希望将来能再次使用.如果你真的使用不同的字符串来转换,你会发现适度的翻译 ..
发布时间:2021-12-24 16:14:59 数据库

在Oracle中,是否有计算两个日期之间差异的函数?

在Oracle中,是否有计算两个日期之间差异的函数?如果没有,是否有办法以小时和分钟显示两个日期之间的差异? 查询: SELECT Round(max((EndDate - StartDate ) * 24), 2) as MaximumScheduleTime,Round(min((EndDate - StartDate) * 24), 2) 作为 MinimumScheduleTime ..
发布时间:2021-12-24 16:14:41 数据库

如何在oracle包中查找依赖项?

我的问题是如何通过 SQL 查询或任何其他内部/外部工具查找内部 oracle 包依赖项.它甚至可能还是我应该通过代码找出自己? 示例: 我有一个包,其中包含 4 个程序 A、B、C、D 和 1 个函数 F. A 是运行 B 和 C 过程的 'main' 过程. 函数F被B和C过程使用. 过程 D 是独立的(在 elswhere 中使用). 现在我想得到这样的结果: ST ..
发布时间:2021-12-24 16:14:34 数据库

sqldeveloper - DBMS_OUTPUT.PUT_LINE() 不起作用

我正在尝试将传递给 DBMS_OUTPUT.PUT_LINE() 函数的值打印到 SQL Developer 中的 DBMS_OUTPUT 屏幕.无论我传递给函数什么,都不会在输出窗口中打印任何内容. 我打开了 DBMS 输出窗口,甚至连接了可用的连接.但是在运行以下脚本时,“脚本输出"窗口中只打印了“PL/SQL 过程成功完成",而 Dbms 输出窗口中则没有. 此外,我已将缓冲区大 ..
发布时间:2021-12-24 16:14:29 其他开发

Oracle 中的逗号分隔值

我有一列用逗号分隔的值,例如 6,7,99.3334. 我需要编写一个 PL SQL 程序来分别给我这些值.列的长度为 40. 谁能帮我解决这个问题? 解决方案 可能是这样的吗? with my as (选择 '6,7,99.3334' 字符串从双重)选择regexp_substr(my.str,'[^,]+',1,level) 部分从我的按级别连接 ..
发布时间:2021-12-24 16:14:19 数据库

pl/sql - 在存储过程中使用动态查询

我正在使用存储过程通过游标将数据插入到临时表中.此过程将动态查询存储在变量中以装载插入/更新命令. 这是代码(不是完整的查询,我剪掉了一些部分以便于阅读): FOR VC2 IN (SELECT C.OBJETIVO,C.AUDITORIA ,C.NOME,C.PRODUTO来自微积分 C)环形SELECT ' V_UPD 号码:= 0;选择(选择 ID_TIPO_TERR来自 ZREP ..
发布时间:2021-12-24 16:14:15 数据库

使用 PL/SQL 创建 xls 文件而无需通过 xml

我的系统是APEX/Oracle 11g开发的,想直接创建xls文件,不用创建xml文件.系统当前创建了一个xml文件,然后可以保存为xls格式,但是非常挑剔的用户不喜欢尝试打开xml文件时的Windows 7警告(Excel警告该文件的格式与其扩展名不匹配).有没有办法在 APEX 中使用 Oracle PL/SQL 来完成此操作? 解决方案 Morten Braten 整理了一个很棒的 ..
发布时间:2021-12-24 16:14:08 其他开发

为什么我们不能在动态 SQL 语句中使用强引用游标?

我正在尝试使用带有动态 sql 语句的强 ref cur 但它给出了一个错误,但是当我使用弱游标时它可以工作,请解释是什么原因,请向我转发 oracle 服务器架构师的任何链接,其中包含有关如何在 Oracle 服务器中完成编译和解析的问题.这是错误和代码. 错误在第 6 行:ORA-06550:第 6 行,第 7 列:PLS-00455:游标“EMP_REF_CUR"不能用于动态 SQL OP ..
发布时间:2021-12-24 16:13:59 数据库

如何使用对象类型的嵌套表创建 Oracle 表?

我有一个高度嵌套的 OBJECT TYPE 结构,它允许我以树状方式保存数据. 我现在想创建一个表来缓存这些对象,但是我在创建表时遇到了困难.我怀疑我的问题是多个嵌套级别,但不知道如何解决. 创建类型 STEP_OBJ 作为对象 (ID VARCHAR2(20),OTHER_FIELDS VARCHAR2(100));/创建类型 STEP_TAB_OBJ 作为 STEP_OBJ 表;/创建 ..
发布时间:2021-12-24 16:13:51 数据库

为什么这里需要立即执行?

我是一名 SQL Server 用户,我有一个使用 Oracle 的小项目,所以我试图了解 Oracle 的一些特殊性,我认为我需要一些帮助才能更好地了解以下情况: > 我想在创建临时表之前测试它是否存在,所以我在这里有这个代码: DECLAREtable_count 整数;var_sql VARCHAR2(1000) := '创建全局临时表测试(你好 varchar(1000) NOT N ..
发布时间:2021-12-24 16:13:43 数据库

创建 365 天视图

如何创建包含一年中所有天数的 View.view 应填写从 1 月 1 日到 12 月 31 日的日期.我如何在 Oracle 中执行此操作? 如果当前年份有 365 天,view 应该有 365 行带日期.如果当前年份有 366 天,view 应该有 366 行带日期.我希望 view 有一个 DATE 类型的列. 解决方案 这个简单的视图可以做到: 创建或替换视图 year_d ..
发布时间:2021-12-24 16:13:32 数据库