在oracle 10g中导入一个html文件

问题描述 投票:0回答:2

是否可以在oracle 10g中导入一个html文件并在其中搜索一个单词?我该怎么办?

html oracle oracle10g
2个回答
1
投票

为什么要让Oracle在HTML文件中搜索某些字符串?

  • 双击该文件
  • 它将在浏览器中打开
  • CTRL + F将打开搜索,以便...搜索该单词

甚至

  • 在任何文本编辑器中打开HTML文件
  • 使用其搜索功能来定位该单词

如果你坚持使用Oracle,那么

  • 创建一个表
  • 其中一列应该是CLOB
  • 使用HTML将HTML文件加载到其中 Oracle Text(由@ paulsm4建议) SQL * Loader,或 外部表功能,或 UTL_FILE,或 DBMS_LOB,或者其他东西
  • 对该CLOB列使用DBMS_LOB.INSTR函数,并查看该字是否存在于其中

我想说的是:我不认为Oracle(作为数据库管理系统)是正确的工具。可以这样做的事实并不意味着它应该完成。还有其他(编程)语言旨在以简单(r)的方式实现。例如,Python。

另一方面,我有点理解 - 当Oracle是您知道的唯一工具时 - 它是您将要使用的工具。


0
投票

你在找这个吗?

FUNCTION GetFile(FolderName IN VARCHAR2, FileName IN VARCHAR2) RETURN CLOB IS

    xbfile   BFILE; 
    xclob    CLOB; 
    destOffset INTEGER := 1; 
    srcOffset INTEGER := 1; 
    warning INTEGER;
    lang_context INTEGER;

BEGIN 
    xbfile := BFILENAME (FolderName, FileName); 
    DBMS_LOB.OPEN (xbfile); 
    DBMS_LOB.CREATETEMPORARY(xblob, TRUE, DBMS_LOB.SESSION);    
    DBMS_LOB.LOADCLOBFROMFILE(
        dest_lob => xblob, 
        src_bfile => xbfile, 
        amount => DBMS_LOB.GETLENGTH(xbfile), 
        dest_offset => destOffset, 
        src_offset => srcOffset,
        bfile_csid => NLS_CHARSET_ID('AL32UTF8'),
        lang_context => lang_context,
        warning => warning); 

    DBMS_LOB.CLOSE(xbfile); 

    RETURN xclob; 

END GetFile;
© www.soinside.com 2019 - 2024. All rights reserved.