在Oracle模式中定义媒体对象有哪些


  本文标签:Oracle模式

  Oracle中提供的一些相关媒体对象与过程都是在Oracle模式里去定义建立包含 ORDDicom 列的表  。如果你在Oracle模式的相关操作里存在不解之处的话,你就可以浏览以下的文章对其进行了解  。

  本教程使用一个包含四个列的简单表:一个整数标识符 (id)、一个 ORDSYS.ORDDicom 对象 (dicom)、一个 ORDSYS.ORDImage 对象 (imageThumb) 和另一个ORDSYS.ORDDicom 对象 (anonDicom)  。注意,Oracle 提供的所有多媒体对象和过程都在Oracle模式中定义  。执行以下步骤:

  1.在 SQL*Plus 会话中,执行以下命令:

  

  1. @create_dicom_table  

  create_dicom_table.sql代码如下:

  Java代码

  1. set echo on;   
  2. drop table medical_image_table;   
  3. create table medical_image_table   
  4. (id integer primary key,   
  5. dicom ordsys.orddicom,   
  6. imageThumb ordsys.ordimage,   
  7. anonDicom ordsys.orddicom);   
  8. set echo on;  
  9. drop table medical_image_table;  
  10. create table medical_image_table  
  11. (id integer primary key,  
  12. dicom ordsys.orddicom,  
  13. imageThumb ordsys.ordimage,  
  14. anonDicom ordsys.orddicom);  

  

  导入医学图像

  该主题描述了如何将数据库文件系统中的医学图像加载到新创建的medical_image_table表中  。注意,在大多数情况下,您希望使用 SQL*Loader 而不是本例所示的Oracle模式中定义中 ORDDicom 导入方法加载数据  。

  创建一个 PL/SQL 过程image_import(),该过程将把一个新行插入medical_image_table,将文件名中的 DICOM 数据导入新创建的 ORDDICOM 对象,然后将 DICOM 属性提取到元数据属性(基于默认映射文档)和 ORDDICOM 对象的 UID 属性  。注意,默认映射文档ordcmmp.xml在安装期间加载  。

  您可以创建一个自定义映射文档,并将属性提取到单独的 XML 文档中,但该主题不在本教程的讨论范围内  。

  执行以下步骤:

  1.在 SQL*Plus 会话中,输入以下命令:

  

  1. @create_import_procedure  

  create_import_procedure.sql代码如下:

  Java代码

  1. -- Set Data Model Repository   
  2. execute ordsys.ord_dicom.setDataModel();   
  3. create or replace procedure image_import
    (dest_id number, filename varchar2) is   
  4. dcm ordsys.orddicom;   
  5. begin   
  6. delete from medical_image_table where id 
    dest_id;   
  7. insert into medical_image_table 
    (id, dicom, imageThumb, anonDicom)   
  8. values (dest_id, ordsys.orddicom
    (‘file’, ‘IMAGEDIR’, filename, 0),   
  9. ordsys.ordimage.init(), ordsys.orddicom())   
  10. returning dicom into dcm;   
  11. dcm.import(1);   
  12. update medical_image_table set dicom=
    dcm where id=dest_id;   
  13. commit;   
  14. end;   
  15. /   
  16. show errors;   
  17. -- Set Data Model Repository  
  18. execute ordsys.ord_dicom.setDataModel();  
  19. create or replace procedure image_import
    (dest_id number, filename varchar2) is  
  20. dcm ordsys.orddicom;  
  21. begin  
  22. delete from medical_image_table where id
     = dest_id;  
  23. insert into medical_image_table
     (id, dicom, imageThumb, anonDicom)  
  24. values (dest_id, ordsys.orddicom
    (‘file’, ‘IMAGEDIR’, filename, 0),  
  25. ordsys.ordimage.init(), ordsys.orddicom())  
  26. returning dicom into dcm;  
  27. dcm.import(1);  
  28. update medical_image_table set dicom=
    dcm where id=dest_id;  
  29. commit;  
  30. end;  
  31. /  
  32. show errors;  

  

  2.现在,您可以执行新创建的过程,以导入示例 DICOM 文件  。在 SQL*Plus 会话中,输入以下命令:

  Java代码

  1. execute image_import(1,179.dcm);   
  2. execute image_import(1,179.dcm);  

  

  以上就是对,Oracle提供的所有多媒体对象和过程都在Oracle模式中定义中的执行步骤相关的内容的介绍,望你会有所收获  。