plsql相关内容

使用 Oracle LISTAGG 函数消除重复项

可能的重复: oracle 中的 LISTAGG 返回不同的值 我正在使用 Oracle LISTAGG 函数,但在我返回的名称列表中,我实际上希望消除重复项并只返回不同的值. 我的查询是这样的: 选择一个.id,a.change_id,LISTAGG(b.name, ',') WITHIN GROUP (ORDER BY b.name) 作为“产品名称",从 table_a a, ..
发布时间:2021-11-27 12:07:25 数据库

在 PL/SQL 中创建或模拟二维数组

你能帮助我如何在 PL/SQL 中为存储过程创建二维数组吗?列是动态的,因此它也可以增长和改变类型.任何帮助表示赞赏.提前谢谢你! 我有以下代码: 类型 CAR_TABLE_ARRAY 是 varchar2(255) 的 varray(2);TYPE CAR_TABLE_TYPE 是 TABLE OF CAR_TABLE_ARRAY;CAR_TABLE CAR_TABLE_TYPE;CAR ..
发布时间:2021-11-18 03:38:49 其他开发

PL/SQL 存储过程中可变数量的参数

过程 PL/SQL 可以采用可变数量的参数吗? 就我而言,该过程由表单的提交按钮调用,并且表单具有可变数量的输入. 解决方案 你不提,你在用 mod_plsql 吗? 如果是这样,您应该阅读flexible参数传递. 简而言之,在浏览器中使用感叹号作为过程名称的前缀,并使用 name_array 和 value_array 定义过程. ..
发布时间:2021-11-17 05:28:02 其他开发

PL/SQL 阿拉伯语显示为?

当我在PL/SQL Developer中查询含有阿拉伯语文本的数据时,显示为问号(????). 我确信数据正确存储在数据库中,因为它正确显示在网站上,也在服务器上. 所以我认为这是与我的 PL/SQL Developer (v8.0.4.1514) 相关的问题. 有什么方法可以改变 PL/SQL Developer 显示/编码阿拉伯文本的方式吗? 如何检查阿拉伯文本的存储格 ..
发布时间:2021-11-17 01:27:49 其他开发

PLSQL APPLE 推送通知

我遇到通知问题.我将 Oracle apex 与休息服务一起使用. 如何从 pl/sql 向 APN iphone 发送推送通知?你在数据库中使用Java吗? 解决方案 我们使用 java-apns 您创建了一个服务: InputStream resourceAsStream = 线程.currentThread().getContextClassLoader().getRe ..
发布时间:2021-11-16 21:15:12 其他开发

了解 Table 和 Transaction API 之间的区别

朋友们, This Ask Tom thread 我通过另一个 SO 问题发现,提到了 Table 和 Transactional API,我试图了解它们之间的区别. 表 API (TAPI) 是无法访问底层表的地方,并且有“getter"&“setters"来获取信息. 例如要选择一个地址,我会: the_address := get_address(address_id) ..
发布时间:2021-11-15 00:47:34 其他开发

如何测试 ANTLR4 中包含的 PL/SQL 语法?

我刚刚开始使用 ANTLR,想尝试使用 plsql.g4 语法.我遵循 ANTLR v4 入门. 以下命令执行没有问题: antlr4 plsql.g4java org.antlr.v4.Tool plsql.g4javac plsql*.java 在入门示例中,他们运行以下命令: grun Hello r -tree 其中“Hello"是语法的名称,“r"是其产生式规则之一.语法表 ..
发布时间:2021-11-11 04:04:08 其他开发

如何使用 plsql-parser (ANTLR)

我想在自动化测试中检查 PL/SQL 查询语法,它看起来像 https://github.com/porcelli/plsql-parser 可能对此有用.不过,我并不容易找到我将如何安装和使用它. 请注意,这是针对 Ruby 项目的,但我相当擅长 Java.我希望有某种方法可以通过控制台运行检查,传入 SQL,并获取任何错误信息,包括行/列. 谢谢. 解决方案 下载 ANTL ..
发布时间:2021-11-11 03:36:30 其他开发

从 java 运行 Oracle sql 脚本给出 SQLSyntaxErrorException: ORA-00900: invalid SQL statement

我正在使用 Oracle 11g,我正在通过 java 代码执行 Oracle sql 脚本.我的 SQL 脚本可能包含 SQL 语句(DDL 或 DML)或 PL/SQL 块,所以我不想在我的 java 代码中解析脚本,而是使用了 此解决方案 一次执行完整的脚本.以下是示例代码,其中 SQLExec 类在 ant jar 中. 此解决方案适用于大多数情况,但如果 sql 脚本包含 crea ..
发布时间:2021-11-11 02:21:07 其他开发

ANT sql 任务:如何运行 SQL 和 PL/SQL 并注意执行失败?

要从 ANT 执行 .sql 脚本文件,它可以使用以下任务正常工作: 但如果 .sql 文件不仅包含纯 SQL,还包含 PL/SQL,则任务将失败.这可以通过使用以下代码段来解决: 有什么想法/建议可以解决这个问题吗? 谢谢, 彼得 解决方案 我想有点晚了 - 但我希望这会帮助某人: 总的来说,我认为我们应该更喜欢使用 sql 而不是 exec executable="sql ..
发布时间:2021-11-11 02:12:51 其他开发

在 WHERE 子句中正确使用 COALESCE

有人可以解释为什么在下面的条件下,coalesce 在 where 子句中不起作用吗?在这种情况下,我们如何在不改变以下合并条件的情况下正确使用合并,并且只针对被破坏的 = Y? 餐桌水果: ITEM_NAME ITEM_NO SPOILED苹果 A15354 N香蕉 BYHUG1 N葡萄 GR0013 Y橙子ORULYE N番石榴 GUOIUW Y 查询: 选择fruit.ite ..
发布时间:2021-09-24 20:17:35 其他开发

由于表发生变化,触发器无法执行

我想知道这个问题的问题是什么,当我执行我的存储过程时它一直向我显示这个错误.我的目标是在使用我的存储过程将数据更新到我的表中之前,我想检查用户输入的触发器中的错误 SQL>exec PRC_PAY_TRIP(1031,2031,'Cash',200)BEGIN PRC_PAY_TRIP(1031,2031,'Cash',200);结尾;*第 1 行的错误:ORA-04091: 表 TEST.PA ..
发布时间:2021-09-09 19:58:56 其他开发

如何使用 plsql 表参数在匿名块中传递值

表 abc 有以下列 allowed_ain121234 我有一个程序 创建或替换过程 abc( p_admin varchar2,p_approved_ain abc.approved_ain)--参数中的plsql表开始结尾; 现在,当我在匿名块中调用此过程时:- 声明l_Admin varchar2(100);l_approved_ain abc.approved_ain;开始a ..
发布时间:2021-09-08 20:14:47 其他开发

如何在存储过程 Oracle 中忽略空参数

我创建了一个存储过程,其中用户可以在参数中插入 1 个或多个值 创建或替换过程 MyProcerdure(标题电影.标题%类型,country Film.country%Type,语言 Film.language%Type,category Film.category%Type,refCursor OUT SYS_REFCURSOR )作为开始OPEN refCursor FOR选择 Film. ..
发布时间:2021-08-30 19:56:46 其他开发

PL-SQL 存储过程拆分字符串

我想做的是: 在java中我有一个像['AB','BC','CD','DE']这样的数组,我想把它连接到像“AB、BC、CD、DE"这样的东西并将它发送到程序作为论据. 在程序中,我的想法是,我想做类似 v_passedArgs --(AB,BC,CD,DE)SELECT * FROM SOME_TABLE WHERE SOME_COL IN (v_passedArgs.split( ..
发布时间:2021-08-30 19:56:38 其他开发

创建 Oracle 包正文时出错

我的包中有以下主体,用于在 HR 模式中执行一些 CRUD 操作: CREATE SEQUENCE emp_sequence;创建或替换包体 employee_crud ASPROCEDURE create_emp(p_last_name IN雇员.last_name%type, p_first_name IN雇员.first_name%type,p_email IN雇员.email%type, ..
发布时间:2021-08-30 19:54:54 其他开发

未引发触发 if-else 语句错误

我创建了一个程序和一个触发器,我的目的是支付票价,输入的票价金额必须大于或等于支付表中的确切金额 从表中我的意思是,用户需要输入足够的数量才能进行存储过程,如果输入的数量低于该数量,则会引发触发错误! 程序 创建或替换程序 PRC_PAY_TRIP(CUST_ID IN NUMBER,PAYMENT_ID IN NUMBER,PAYMENT_TYPE IN VARCHAR2,AMT_ ..
发布时间:2021-08-30 19:49:32 其他开发

Oracle - 如果 ORA-03135 连接丢失,事务会怎样?

我需要在生产环境中运行一个需要大量时间的删除语句,并且服务器在 30 分钟后关闭任何连接(ORA-03135,我在日志中看到的). 如果我启动delete语句并且服务器关闭连接会发生什么?该语句会在服务器上完成执行还是会立即关闭并回滚?在这种情况下,SQL*Plus set autocommit on 命令可以帮助吗? 解决方案 查看手册:https://docs.oracle.co ..
发布时间:2021-08-25 18:38:51 其他开发

是否可以在存储过程中运行 sqlplus 文件?

嗨,是否可以从存储过程中运行和执行 sqlplus 文件? 到目前为止,我已经尝试了以下方法: 创建或替换过程脚本(p_orgid IN VARCHAR2,p_axtype IN VARCHAR2,P_option IN VARCHAR2) 作为运行 VARCHAR2(200) := '@C:\Scripts\delete_ax\delete-ORG.sql '||p_orgid ||'' ..
发布时间:2021-08-25 18:38:31 其他开发

使用 for 循环假脱机到 .csv 文件

需要使用循环将输出假脱机到 .csv 文件中,仅供参考...我在 4 个差异分区中有数据. 但不知道如何继续. 代码就像. 开始FOR var_1 in 1 .. 4环形设置线宽 1000关闭反馈关闭下划线线轴 C:\Users\file.csv 替换SELECT cust_no FROM customer PARTITION (customer_PR'||var_1||')WHER ..
发布时间:2021-08-25 18:38:23 其他开发