-
Oracle数据库的分析函数
所属栏目:[百科] 日期:2021-04-03 热度:140
分析函数 over 连续的相加 求各部门的薪水总和和全部总和 select name,salary,emp sum(salary) over (order by emp) 连续求和 sum(salary) over () 总和 100*round(sal/sum(sal) over(),5) 份额 from company; sum() = sum over() 求的是总和, sum over (or[详细]
-
Oracle数据库的分区
所属栏目:[百科] 日期:2021-04-03 热度:81
分区 日常开发中最常用的技术,主要针对于大数据量,频繁查询数据等需求 oracle 提供了 7种分区,本文主要介绍较常用的几种 range 分区 区域分区,分区的时候必须在创建表时指定 语法: create table (...) partition by range (filed) (partition r1 values[详细]
-
oracle – 表依赖的递归查询不会像我想的那样递归
所属栏目:[百科] 日期:2021-04-03 热度:156
我有一个想法,我可以编写一个查询来查找根表的所有后代表,基于外键. 查询看起来像这样: select level,lpad(' ',2 * (level - 1)) || uc.table_name as "TABLE",uc.constraint_name,uc.r_constraint_namefrom all_constraints ucwhere uc.constraint_type in[详细]
-
Oracle中TNS_ADMIN变量的用途是什么?
所属栏目:[百科] 日期:2021-04-03 热度:86
请告诉我在Oracle中使用TNS_ADMIN参数有什么用?我正在使用oracle数据库在Unix上工作. 是否需要此参数来定位sqlplus.我正在执行一个脚本,在该脚本中对Oracle数据库执行更新查询. 使用crontab执行时,脚本失败并显示127错误代码. 我怀疑(eval)失败的脚本内容是[详细]
-
在引入Oracle插入触发器的WHEN原因中,引用OLD的内容是什么?
所属栏目:[百科] 日期:2021-04-03 热度:145
在Oracle中编写行级触发器时,我知道您可以使用OLD和NEW伪记录来引用触发触发器的行的旧状态和新状态.我知道在INSERT触发器中OLD不包含任何数据,但我不确定这会如何影响该触发器的WHEN子句的评估.例如,如果我有以下触发器: CREATE OR REPLACE TRIGGER mung_r[详细]
-
oracle – 建立一对一关系
所属栏目:[百科] 日期:2021-04-03 热度:185
可以通过约束在Oracle中完全建模一对一关系吗?换句话说,PARENT实体总是完全具有子实体的n-CHILDREN,并且每个孩子只有一个父母. 将n视为数据库常量. 解决方法 即使多个会话正在进行更新,这样做也是非常容易的.如果你尝试使用触发器,你会陷入混乱,Oracle的声[详细]
-
oracle – PL / SQL:检索包中的过程和函数的名称
所属栏目:[百科] 日期:2021-04-03 热度:85
是否可以检索特定包中的所有过程和函数的名称?我知道他们可以从ALL_SOURCE视图中收集(闻起来像是hack-ish),但我更喜欢更规范的策略. 解决方法 DBA_PROCEDURES具有包中的公共方法 SELECT owner,object_name AS package_name,procedure_name AS method_name F[详细]
-
Oracle:存储过程的可变参数数量
所属栏目:[百科] 日期:2021-04-03 热度:61
我想使用存储过程将各种用户插入到Oracle数据库中.用户(表“用户”)具有姓名,姓氏和出生日期: CREATE TABLE "USER" ( "Name" VARCHAR2(50),"Surname" VARCHAR2(50),"Dt_Birth" DATE,) 创建用户的存储过程非常简单: CREATE PROCEDURE Insert_User(p_user,p_[详细]
-
使用.NET将数据加载到ORACLE数据库的最快方法是什么?
所属栏目:[百科] 日期:2021-04-03 热度:194
我目前有一个每日进程,使用调用sql_loader的 shell脚本将大量数据从TXT文件加载到ORACLE数据库.我想将它迁移到.NET服务,但不想依赖从我的服务执行sql_loader. 实现这一目标的最佳(最快)方法是什么? 解决方法 我假设你不喜欢SQLLoader,因为它的命令行界面,以[详细]
-
Oracle上的动态SQL与存储过程的性能
所属栏目:[百科] 日期:2021-04-03 热度:176
有很多关于SQL Server中缓存执行计划如何消除存储过程的大部分性能优势而不是动态sql的信息.但是,我还没有发现Oracle数据库是否也是如此.有没有人有关于Oracle中动态SQL处理信息的信息或指针?最好是实际的性能数字,而不是一般的“sp是好的”/“sp是坏的”讨[详细]
-
Oracle写入文件
所属栏目:[百科] 日期:2021-04-03 热度:78
我正在运行oracle并有一个查询从数据库中提取一些结果.我想把结果写成文本文件.我该怎么做呢? 我首选的方法是使用UTL_FILE.有人会举例说明如何做到这一点吗? 解决方法 如果您正在使用PL / SQL,那么您可以使用UTL_FILE包,与使用sql spool的不同之处在于文件[详细]
-
Oracle SQL:重复使用CASE WHEN的子查询,而不必重复子查询
所属栏目:[百科] 日期:2021-04-02 热度:123
我有一个Oracle SQL查询,其中包括列输出中的计算.在这个简化的例子中,我们正在寻找日期在某个范围内的记录,其中某些字段与特定的东西相匹配;然后对于那些记录,取出ID(不是唯一的)并再次搜索表中具有相同ID的记录,但是某些字段与其他字段匹配且日期在主记录的[详细]
-
oracle – PL / SQL – 在Where子句中使用“List”变量
所属栏目:[百科] 日期:2021-04-02 热度:102
在PL / SQL中,如何声明包含多个值的变量MyListOfValues(MyValue1,MyValue2等) SELECT * FROM DatabaseTable WHERE DatabaseTable.Field in MyListOfValues 我正在使用Oracle SQL Developer 解决方法 使用集合: CREATE TYPE Varchar2TableType AS TABLE OF V[详细]
-
oracle – 使用本地CSV文件创建表
所属栏目:[百科] 日期:2021-04-02 热度:97
我有以下查询来创建一个表,但文件名位于我的本地机器上(因为我无权访问Oracle Box)如何使用本地文件在Oracle数据库上创建表).我看到的所有示例都假定该文件位于Oracle数据库服务器上. CREATE OR REPLACE DIRECTORY file_dir AS 'c:/temp';GRANT WRITE ON DIR[详细]
-
Oracle的用户定义聚合函数是否可以定义为使用两列?
所属栏目:[百科] 日期:2021-04-02 热度:60
我想实现一个自定义回归聚合函数,它类似于现有的REGR_SLOPE. 我想要定义的函数需要获得两列作为参数,例如 select T.EMPLOYEE_ID,CUSTOM_REGR_SLOPE(T.DATE,T.SALARY) as SALARY_TRENDfrom (...) Tgroup by T.EMPLOYEE_ID; Oracle的文档表明这可能是不可能的,[详细]
-
如何获取Oracle 10g中无效对象的错误列表
所属栏目:[百科] 日期:2021-04-02 热度:82
说明:我的数据库中有200多个无效对象,原因可能只有几个对象(其他因为依赖性).有没有办法可以选择对象名称和“错误原因”,因为它无效. 解决方法 您可以查询[DBA / ALL / USER] _ERRORS.它描述了当前用户拥有的所有存储对象(视图,过程,函数,包和包体)的当前错[详细]
-
Oracle – 是否可以在更新期间在case语句中“设置”值,如下所示
所属栏目:[百科] 日期:2021-04-02 热度:153
是否可以在更新期间在case语句中“设置”值,如下所示? UPDATE TABLE1 CASE WHEN COL1 = 'A' THEN SET COL2 = 10,COL3 = 20,COL4 = 30 WHEN COL1 IN ('B','N') THEN SET COL2 = 1,COL3 = 5,COL4 = 7 WHEN COL1 = 'D' THEN SET COL2 = 11,COL3 = 13,COL4 = 17[详细]
-
Oracle APEX交互式报告条件列链接显示
所属栏目:[百科] 日期:2021-04-02 热度:197
我有一个交互式报告,显示文章表中的所有记录.对于已登录的作者,我想显示所有记录,但是只应为该作者撰写的那些文章显示EDIT.在文章表中,我有CREATED_BY列,其中包含作者用户名. 我在链接列中添加了条件作为表达式1中的项目/列的值=表达式2,因为Expression1 =#C[详细]
-
oracle dbms_scheduler repeat_interval
所属栏目:[百科] 日期:2021-04-02 热度:172
我在打包的MY_PACKAGE_X中有一个名为MY_PROCEDURE_X的过程. 我的要求是程序需要在每个月的1号和16号执行. 如果它在本月的第一天运行,则执行时间应为上午10:00, 如果它在本月16日运行,则执行时间应为05:00 PM. 我可以做一份工作吗? 下面是我完成的一半脚本:[详细]
-
退格在sqlplus命令行中不起作用
所属栏目:[百科] 日期:2021-04-02 热度:195
在我的sqlplus(for oracle)命令行中,后台空间不起作用.如何配置sqlplus以使用退格键从命令行删除字符?我不经常使用sqlplus命令行,只是为了在我的数据库中快速干预,这对我来说非常危险我需要使用的时间. 亲切的问候.谢谢 解决方法 你在哪个平台上工作? 如果[详细]
-
oracle – ORA-24550:收到信号:[si_signo = 6]错误
所属栏目:[百科] 日期:2021-04-02 热度:148
我想知道ORA-24550收到的信号:[si_signo = 6]是什么意思? 我知道这是一个oracle错误,并且oracle最新补丁可以解决这个问题. 触发此错误时,例如必须处理此信号的情况,或者当我的应用程序必须处理与oracle相关的内容并且应用程序无法执行此操作时是否发生此错[详细]
-
Oracle SQL:如何为每个“组”/“集群”选择N条记录
所属栏目:[百科] 日期:2021-04-02 热度:69
我有一个表big_table,有400万条记录,它们通过名为“process_type_cod”的列聚集在40组中.此列可能采用的值列表位于第二个表中.我们称之为small_table. 因此,我们将big_table与一个名为process_type_cod的NOT NULL FK指向small_table(假设两个表上的列名相同)[详细]
-
如何在Oracle PLSQL中将数字的小数位数扩展到最小?
所属栏目:[百科] 日期:2021-04-02 热度:146
我无法弄清楚如何选择以下内容: 123 - 123.00000123.12 - 123.12000123.123456 - 123.123456 我想将小数位数扩展为例如5位小数(最小值) 如果根本没有小数位,则应该有5个零. 如果有超过5个小数位,那就没问题. SELECT ROUND(123,5) FROM DUAL; 结果:123 而不[详细]
-
oracle – 使用PL / SQL生成XLS文件
所属栏目:[百科] 日期:2021-04-02 热度:103
我想使用PL / SQL生成XLS文件.这包括将文本分成单元格,着色单元格,边界单元格和合并单元格. 这可能还包括: 不同的字体,大小,样式,对齐方式和文本颜色 不同的线条排列,样式和边框颜色 细胞的不同类型(数量,文本,时间,日期,布尔值,…) 可以请任何人指导我,我[详细]
-
如何使用Oracle的DBMS调度程序跟踪正在运行的作业的状态?
所属栏目:[百科] 日期:2021-04-02 热度:146
这是否可以使用oracle的调度程序.我只是想跟踪当前正在执行的位置,作业运行的时间并获得反馈. dbms_scheduler.create_job( job_name = 'hello_oracle_scheduler',job_type = 'PLSQL_BLOCK',job_action = 'BEGIN DBMS_OUTPUT.PUT_LINE('' ''); DBMS_OUTPUT.PU[详细]