zoukankan      html  css  js  c++  java
  • (原创)oracle目录及Long类型操作

    --创建一个表
    create table ascii_docs
    (
    id number,
    document long
    );
    --创建一个目录

    create or replace directory OUT_PATH as 'c:\temp';
    --给目录授予权限

    grant read, write on directory OUT_PATH to test;

    create or replace function dump_doc(docid in number,filename in varchar2) return varchar2 is
      data_chunk varchar2(254);
      chunk_size number :=254;
      chunk_size_returned number;
      --set location to be the directory in which the file should go.
      location varchar2(20) := 'OUT_PATH';
      mycursor number;
      stmt varchar2(1024);
      cur_pos number :=0;
      rows number;
      dummy number;
      file_handle utl_file.file_type;
      status varchar2(50);
      begin
      --open the file for writing.
      file_handle := utl_file.fopen(location,filename,'w');
      --bind the doctoget host variable with the plsql parameter docid
      --whitch is passed into the function
      stmt := 'select document from ascii_docs where id = :doctoget';
      mycursor := dbms_sql.open_cursor;
      dbms_sql.parse(mycursor,stmt,dbms_sql.v7);
      dbms_sql.bind_variable(mycursor,':doctoget',docid);
      --only doing one fetch for the primary key as assuming the whole
      --document is stored in one row
      dbms_sql.define_column_long(mycursor,1);
      dummy := dbms_sql.execute(mycursor);
      rows := dbms_sql.fetch_rows(mycursor);
      loop
        --fetch 'chunks of the long until we have got the lot
        dbms_sql.column_value_long(mycursor,1,chunk_size,cur_pos,data_chunk,chunk_size_returned);
        utl_file.put(file_handle,data_chunk);
        cur_pos := cur_pos + chunk_size;
        exit when chunk_size_returned =0;
      end loop;
      dbms_sql.close_cursor(mycursor);
      utl_file.fclose(file_handle);
      return('success');
      exception
        when others then
          utl_file.fclose(file_handle);
          raise;
          return('Fallre');
      end dump_doc;

  • 相关阅读:
    bzoj-4433 小凸玩矩阵(二分图,二分+匈牙利)
    HDU-2255 奔小康赚大钱(二分图、km算法、模板)
    python queue和生产者和消费者模型
    python Events
    python递归锁与信号量
    python 线程锁
    python GIL锁
    python 守护进程
    python 继承式多线程
    python 多线程效果演示
  • 原文地址:https://www.cnblogs.com/jimeper/p/961054.html
Copyright © 2011-2022 走看看