Oracle EBS - SQL&PL/SQL: 笔记2

本文汇总了Oracle SQL中的实用技巧,包括查询组织对应公司名称、表空间管理、数据分批处理、数据库对象依赖关系查询、锁定进程处理、列名与主键修改等操作。
获取组织(OU)对应的公司名称
SELECT hou.organization_id
      ,hou.default_legal_context_id
      ,hou.name ou
      ,gll.legal_entity_name company_name
  FROM org_organization_definitions  ood
      ,hr_operating_units            hou
      ,hr_organization_information_v hoi
      ,gl_ledger_le_v                gll
 WHERE ood.operating_unit = hou.organization_id
   AND hoi.org_information_context = 'Operating Unit Information'
   AND ood.organization_id = hoi.organization_id
   AND hou.default_legal_context_id = gll.legal_entity_id
   AND hoi.org_information3 = gll.ledger_id
   AND ood.organization_id = 81;

 

表空间

1、查看表空间的名称及大小 

select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size
     from dba_tablespaces t, dba_data_files d
     where t.tablespace_name = d.tablespace_name
     group by t.tablespace_name;


 
2、查看表空间物理文件的名称及大小

select tablespace_name, file_id, file_name,
     round(bytes/(1024*1024),0) total_space
     from dba_data_files
     order by tablespace_name;


3、查看表空间的使用情况

select sum(bytes)/(1024*1024) as free_space,tablespace_name 
     from dba_free_space
     group by tablespace_name;


通过For循环对数据进行分批

-- set batch_id
v_count := 1;
FOR rec IN (SELECT ROWID FROM xxinv_item_imp_tab WHERE error_flag IS NULL ORDER BY organization_code,segment1)
LOOP
  UPDATE xxinv_item_imp_tab
  SET    batch_id = ceil(v_count/200)
  WHERE  ROWID = rec.ROWID;
  v_count := v_count + 1;
END LOOP;


查询数据库对象的依赖关系

SELECT * FROM dba_dependencies dd WHERE upper(dd.name) = 'XXBOM_MBOM_IMPORT_PKG';


查看锁表进程并杀死

1、查找被锁表

SELECT dob.object_name table_name
      ,lo.session_id || ', ' || vss.serial# 删除号
      ,lo.locked_mode
      ,lo.session_id
      ,vss.serial#
      ,vss.action action
      ,vss.osuser osuser
      ,vss.logon_time
      ,vss.process ap_pid
      ,vps.spid db_pid
      ,vss.*
  FROM v$locked_object lo, dba_objects dob, v$session vss, v$process vps
 WHERE lo.object_id = dob.object_id
   AND upper(dob.object_name) = 'xxxxxxxxxxxxxx' --MTL_SYSTEM_ITEMS_INTERFACE
   AND lo.session_id = vss.sid
   AND vss.paddr = vps.addr
 ORDER BY 2, 3, dob.object_name


2、删除进程,如之前的“删除号”查找出的结果为“286, 2184”,则运行以下SQL

ALTER system kill session '286, 2184'

 

修改表列名

没有直接的方法改变。但是可以通过其他方法达到改变列名的目的。
例如:
      表A结构如下:
                  ID(NUMBER)           NAME(VARCHAR2(20)
              ------------------------------------
                    1                                     TOM
                    2                                     MIKE
                    3                                     JHON
将列名NAME改变为NAME1
方法1.列复制法
1.增加一个与NAME相同结构的字段NAME1
    Alter   table   A   add(NAME1   varchar2(20));
2.将NAME中的数据复制到NAME1中
    Update   A   Set   NAME1=NAME;
3.删除NAME列
    Alter   table   A   drop   column   NAME;
4.修改完成

方法2.表复制法
1.将表A改名
    Alter   table   A   rename   to   A1
2.创建新表并复制数据
    Create   table   A(ID,NAME1)   as     Select   *   from   A1
3.删除表A1
4.修改完成

通过上面两种方法,
重新检索表A结果如下:
                              ID(NUMBER)           NAME1(VARCHAR2(20)
              ------------------------------------
                    1                                     TOM
                    2                                     MIKE
                    3                                     JHON

 

修改表主键

--修改主键
CREATE TABLE xxtest1(
user_id NUMBER NOT NULL,
user_name VARCHAR2(24) NOT NULL,
pass_word VARCHAR2(24) NOT NULL);

SELECT * FROM xxtest1;
ALTER TABLE xxtest1 ADD (CONSTRAINT PK_1 PRIMARY KEY(user_id));

ALTER TABLE xxtest1 DROP CONSTRAINT PK_1;  

ALTER TABLE xxtest1 ADD (CONSTRAINT PK_2 PRIMARY KEY(user_name));


 

【轴承故障诊断】基于融合鱼鹰和柯西变异的麻雀优化算法OCSSA-VMD-CNN-BILSTM轴承诊断研究【西储大学数据】(Matlab代码实现)内容概要:本文提出了一种基于融合鱼鹰和柯西变异的麻雀优化算法(OCSSA)优化变分模态分解(VMD)参数,并结合卷积神经网络(CNN)与双向长短期记忆网络(BiLSTM)的轴承故障诊断模型。该方法利用西储大学公开的轴承数据集进行验证,通过OCSSA算法优化VMD的分解层数K和惩罚因子α,有效提升信号分解精度,抑制模态混叠;随后利用CNN提取故障特征的空间信息,BiLSTM捕捉时间序列的动态特征,最终实现高精度的轴承故障分类。整个诊断流程充分结合了信号预处理、智能优化与深度学习的优势,显著提升了复杂工况下轴承故障诊断的准确性与鲁棒性。; 适合人群:具备一定信号处理、机器学习及MATLAB编程基础的研究生、科研人员及从事工业设备故障诊断的工程技术人员。; 使用场景及目标:①应用于旋转机械设备的智能运维与故障预警系统;②为轴承等关键部件的早期故障识别提供高精度诊断方案;③推动智能优化算法与深度学习在工业信号处理领域的融合研究。; 阅读建议:建议读者结合MATLAB代码实现,深入理解OCSSA优化机制、VMD参数选择策略以及CNN-BiLSTM网络结构的设计逻辑,通过复现实验掌握完整诊断流程,并可进一步尝试迁移至其他设备的故障诊断任务中进行验证与优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值