现在的位置: 首页 > 综合 > 正文

Oracle笔记 十四、查询XML操作、操作系统文件

2011年06月10日 ⁄ 综合 ⁄ 共 1268字 ⁄ 字号 评论关闭
--1.随机数

select dbms_random.value from dual;

select mod(dbms_random.random, 10) from dual;

--0-9随机数

select abs(mod(dbms_random.random, 10)) from dual;

--40-49随机数

select 40 + abs(mod(dbms_random.random, 10)) from dual;

 

--2.Xml

declare

       words clob;

       xmlStr varchar2(32767);

       line varchar2(2000);

       line_no number := 1;

begin

     words := dbms_xmlquery.getXML('select * from scott.emp');

     xmlStr := dbms_lob.substr(words, 32767);

     loop

         exit when (xmlStr is null);

         line := substr(xmlStr, 1, instr(xmlStr, chr(10)) - 1);

         dbms_output.put_line(line_no || ':' || line);

         xmlStr := substr(xmlStr, instr(xmlStr, chr(10)) + 1);

         line_no := line_no + 1;

     end loop;

end;

 

--3.文件

--定义文件夹 命名必须大写

create directory MY_DIR as 'D:\TEMP';

--读文件

declare

       inputfile UTL_FILE.file_type; --文件对象

       input varchar2(2000);

begin

     --指定文件

     --3个参数依次为:文件夹 文件 打开方式[r(读) w(写) a(追加)]

     inputfile := UTL_FILE.fopen('MY_DIR', 'demo.txt', 'r');

     loop              

         UTL_FILE.get_line(inputfile, input);

         dbms_output.put_line(input);             

     end loop;

     --关闭文件

     UTL_FILE.fclose(inputfile);

     exception

       when no_data_found then dbms_output.put_line('文件末尾!');

end;

 

--写文件

declare

       inputfile UTL_FILE.file_type; --文件对象

       input varchar2(2000) := 'Hello World!';

begin

     --指定文件

     --3个参数依次为:文件夹 文件 打开方式[r(读) w(写) a(追加)]

     inputfile := UTL_FILE.fopen('MY_DIR', 'mydemo.txt', 'a');

     --写入数据

     UTL_FILE.put_line(inputfile, input);

     --关闭文件

     UTL_FILE.fclose(inputfile);

     exception

       when no_data_found then dbms_output.put_line('文件末尾!');

end;

抱歉!评论已关闭.