plsql相关内容

SQL 返回两个传入日期之间的工作日数

我需要编写一个 sql 查询,返回两个给定日期之间的工作日(周一至周五)数. 我想知道最有效的方法是什么? SELECT --从包括周末在内的总天数开始(DATEDIFF(dd,@StartDate,@EndDate)+1) -- 每个完整周末减去 2 天(DATEDIFF(wk,@StartDate,@EndDate)*2) --如果StartDate是星期日,减1ELSE 0 END) ..
发布时间:2021-12-24 16:36:08 数据库

Oracle 日期减法

我将如何编写一个表达式,让我以天、小时、分钟、秒等为单位给出两个日期之间的差异?默认情况下,在 oracle 中减去两个日期以十进制形式返回天数. 解决方案 那个小数点是提供的两个日期之间相差的天数.您可以做一些数学运算,将其转换为天、小时、分钟、秒等. 编辑:我知道你在找什么.我确定有更简单的方法,但我可能会这样完成: 选择 trunc(5.3574585) 天,trunc(mo ..
发布时间:2021-12-24 16:36:00 数据库

使用 sql/plsql,你如何找出文本使用的字符集?

我有一个 Oracle 数据库,用于存储来自世界各地的不同语言的文档内容.文档存储在带有 BLOB 列的表中,该列存储文档的内容. 我想通过 Oracle 过程找出每个文档的字符集.我不想使用实用程序 CSSCAN,因为您似乎必须在程序之外的单独会话中使用它. 感谢您的帮助! 解决方案 Oracle Globalization Development Kit 可以检测字符集. ..
发布时间:2021-12-24 16:35:47 数据库

SQL查找人员条目的狗最多

人(身份证,狗) 如何找到狗最多的人 选择 *来自人 p1其中 p1.id 在 (选择 p2.id来自人 p2其中 p1.id = p2.id有计数(狗>(选择 p3.id ...等 我是在正确的轨道上还是这行不通?谢谢观看 解决方案 这个怎么样? 选择 *从人其中dogs =(从人中选择max(dogs)) 可能不是最有效的方法,但这会给你一个(或多个)狗数量最多的人.如果 ..
发布时间:2021-12-24 16:35:41 数据库

查找 SQL 中引用的列名和表名

如何查找 SQL 中使用的所有表名和列名?它位于 ORACLE 数据库上.下面是一个 SQL 示例. SELECTA.ENAME,A.AGE 为 EMP_AGE,B.DNAME从一个,b部在哪里a.deptno= b.deptno 我希望输出是这样的 TABLENAME, COLUMNNAMEEMP,ENAMEEMP、DEPTNOEMP,年龄部门,DNAME部门,部门 我做了一些研究,但未 ..
发布时间:2021-12-24 16:35:35 数据库

从 C# 中的 PL/SQL 匿名块返回游标

我正在将现有应用程序从 SQL Server 转换为 Oracle,但遇到了障碍.我正在尝试将匿名块作为动态 SQL 执行并返回结果集.但是,我尝试过的任何内容似乎都无法返回任何值.由于设计限制,存储过程已过时. 我的查询定义为: DECLARE type id_array IS TABLE OF number;t_Ids id_array;开始更新 CSM_RECORDS SET MIG ..
发布时间:2021-12-24 16:35:26 C#/.NET

如何使用 PL/SQL 创建 PDF 报告

是否有可用的 PL/SQL 包或引擎来支持从存储过程创建 PDF 报告? 解决方案 如果您正在寻找免费软件或开源软件包,他们就是这个.我没用过,但口碑不错.lPL_FPDF 如果你有预算,那么这个,哪个企业级产品,意味着优秀的文档,可用.plpdf. 商业包是用原生的 Pl/SQL 编写的,因此非常易于使用.开源包我不知道. 如果您在 Oracle 环境中使用任何报告服务器运行 ..
发布时间:2021-12-24 16:35:22 数据库

Oracle Apex 18.1 交互式网格 (IG) 以编程方式设置过滤器?自定义 IG 搜索

是否可以通过 Javascript 或 PL/SQL API 为 Oracle Apex 中的 IG 设置过滤器? 在做研究时,我偶然发现了 适用于 5.1.4 的 APEX IG 食谱或一些博客文章 如何hack APEX 交互式网格系列,用于使用 Javascript 自定义 IG.所以设置过滤器类似于 PL/SQL APEX_IR.ADD_FILTER 程序,您可以在其中为交互式报告 ..
发布时间:2021-12-24 16:35:16 前端开发

为什么在创建这个简单的物化视图示例时会出现 ORA-12054 错误?

ALTER TABLE RECORDINGS ADD PRIMARY KEY (ID);在记录表空间用户 NOLOGGING 上创建物化视图日志;删除实体化视图 REC_SEARCH_TEST;创建实体化视图 REC_SEARCH_TEST提交时刷新完成作为 (从录音中选择不同的 ID、标题);ORA-12054: 无法为实体化视图设置 ON COMMIT 刷新属性 无法理解这里有什么问题,我知 ..
发布时间:2021-12-24 16:35:07 数据库

Oracle:将字段规范化为 CSV 字符串

我有一些看起来像这样的一对多规范化数据. a |X一个|是一个|z乙 |一世乙 |j乙 |克 什么查询会返回数据,使得“多"方表示为 CSV 字符串? a |x,y,z乙 |我,j,k 解决方案 Mark, 如果您使用的是 11gR2 版本,而谁不是 :-),那么您可以使用 listagg SQL>创建表 t (col1,col2)2 作为3 选择'a', 'x' from du ..
发布时间:2021-12-24 16:35:01 数据库

触发器中的 pragma 自治事务

我在一个表上写了一个触发器,它根据条件从另一个表中删除数据.触发器具有编译指示 Autonomous_transaction,并且触发器按预期工作.但是,我想知道将来是否会出现任何问题,比如数据是否由多个用户/来源同时插入等等......有什么建议吗? 源表t1: --------------------------------------------|用户 ID |auth_name1 ..
发布时间:2021-12-24 16:34:54 数据库

使用 PL/SQL 生成 XLS 文件

我想使用 PL/SQL 生成 XLS 文件.这包括将文本输入单元格、为单元格着色、为单元格添加边框和合并单元格. 这可能还包括: 文本的不同字体、大小、样式、对齐方式和颜色 不同的线条排列、样式和边框颜色 不同类型(数字、文本、时间、日期、布尔值、..)的单元格 可以请任何人指导我吗,我在哪里可以找到任何文档、方法、示例.. - 有关如何执行此操作的任何信息. 解决方案 ..
发布时间:2021-12-24 16:34:47 数据库

Oracle:将选择语句结果集导出为类似于 SQL 开发人员导出的 INSERT SQL 语句

我正在寻找一种解决方案来为 select 语句结果集创建 SQL INSERT 语句使用 PL/SQL 脚本.寻找 SQL Developer 工具中可用的类似功能(导出 --> 格式插入),但我希望将解决方案作为脚本而不是使用任何工具. 我参考了以下解决方案.但是,我想知道是否有更好的方法来做到这一点,因为该解决方案很旧而且不是很简单. 导出为插入声明:但在 SQL Plus 中,该 ..
发布时间:2021-12-24 16:34:43 数据库

循环遍历多个表以执行相同的查询

我有一个数据库,其中每天都会创建一个表来记录流程实例.这些表被标记为 MESSAGE_LOG_YYYYMMDD 目前我想对所有这些表顺序执行相同的查询.我写了下面的 PL/SQL,但卡在第 10 行.如何针对此处的所有表成功执行 SQL 语句? DECLARECURSOR all_tables IS选择表名FROM all_tablesWHERE TABLE_NAME 喜欢“MESSAGE ..
发布时间:2021-12-24 16:34:36 其他开发

PL/SQL 过程的同步.如何保证一次只执行一个程序?

某些 PL/SQL 过程需要花费大量时间进行评估(如重新计算和更新大量数据). 我想将评估此过程的执行上下文的数量限制为单个. 如果其他上下文执行它,则什么都不做... 但我不知道在 PL/SQL 代码中使用哪些原子操作. 注意:如果服务器在过程评估中间停止,我担心使用表行进行同步会导致数据库中的状态不一致...... 解决方案 您可以使用 DBMS_LOCK.re ..
发布时间:2021-12-24 16:34:27 数据库

IP 地址存储为十进制 - PL/SQL 显示为点四边形

我们有一个 Oracle 数据库,其中包含存储为十进制整数的 IP 地址 - 当手动操作数据而不是通过 Web 界面时,这非常痛苦,但手动操作非常方便,因为网络人员不断要求我们做奇怪的事情Web 界面作者没有预料到的事情. 有人能给我提供 PL/SQL 或其他方法来将这些十进制 IP 显示为点分十进制,即 123.123.123.123 格式吗? 即我希望能够运行查询,例如: sel ..
发布时间:2021-12-24 16:34:19 数据库

如何在窗口中安排 Oracle DBMS 作业

我想创建一个每周日(不是周末)从 09:00 到 20:00 每 10 分钟运行的 Oracle DBMS 作业.我想知道我是否可以在作业定义的 FREQ 参数中做到这一点,或者我必须创建一个 New Maintenance Window. 似乎在提出的解决方案中,作业仅在 9 和 20 运行,并且在第一次执行后,当我运行此查询时 选择所有者、job_name、next_run_date来 ..
发布时间:2021-12-24 16:33:59 数据库

我们如何在PL SQL中在特定时间后自动删除表行

我有下面给出的相同列的拖车表: 表 1 工资单: 表 2 TEMP_PAYROLLFILE: 我编写了一个 PL SQL 函数,它从表 PAYROLLFILE 中插入一个重复的行到 TEMP_PAYROLLFILE 并从表 PAYROLLFILE 中删除原始行.所以简而言之,表 TEMP_PAYROLLFILE 为从表 PAYROLLFILE 中删除的数据保留备份. 这里是 ..
发布时间:2021-12-24 16:33:50 数据库