`

oracle中导出excel

阅读更多

create or replace directory MY_DIR
  as 'c:/abc';


create or replace procedure export_data_out_excel

/**
  使用utl_file将需要导出的数据写入到文本文件
  pfile_name:输出文件名。
  pexport_sql:执行的sql语句,select id||chr(9),name||chr(9) from tablename,chr(9)是TAB字符,以保证数据输出到excel能自动换到下一列。
  **/
as
  type som_content_record_type is record(
    car_num varchar2(250),
    cap_date varchar2(250),
    dev_chnname  varchar2(250),
    dev_chnid  varchar2(250));


  som_content_rec som_content_record_type;
  err_num         number;
  err_msg         varchar2(2000);

  type cur_som_content is ref cursor;

  c_som_content cur_som_content;
  l_file        utl_file.file_type;
begin
  l_file := utl_file.fopen('MY_DIR',to_char (sysdate-1, 'YYYY-mm-dd')|| '.xls', 'w');
  utl_file.put(l_file, '车牌号'||chr(9));
  utl_file.put(l_file, '抓拍时间'||chr(9));
  utl_file.put(l_file, '通道名称'||chr(9));
  utl_file.put_line(l_file, '通道编号'||chr(9));
  open c_som_content for 'select car_num||chr(9),to_char (cap_date, ''YYYY-mm-dd'')||chr(9),dev_chnname||chr(9),dev_chnid ||chr(9) from c_table t where t.cap_date >= to_date(to_char(sysdate, ''YYYY-mm-dd''), ''YYYY-mm-dd'') - 1 and t.cap_date <= to_date(to_char(sysdate,''YYYY-mm-dd''),''YYYY-mm-dd'')';
  loop
    fetch c_som_content
      into som_content_rec.car_num, som_content_rec.cap_date,som_content_rec.dev_chnname,som_content_rec.dev_chnid;

    exit when c_som_content%notfound;
    utl_file.put(l_file, som_content_rec.car_num);
    utl_file.put(l_file, som_content_rec.cap_date);
    utl_file.put(l_file, som_content_rec.dev_chnname);
    utl_file.put_line(l_file, som_content_rec.dev_chnid);
  end loop;

  close c_som_content;

  utl_file.fflush(l_file);
  utl_file.fclose(l_file);

exception
  when others then
    if utl_file.is_open(l_file) then
      utl_file.fclose(l_file);
      err_num := sqlcode;
      err_msg := substr(sqlerrm, 1, 2000);

      commit;
    end if;
end;

如果写:frw:=utl_file.fopen('c:\abc','emp.txt','w');

会报错
ora-29280  目录无效
改成
frw:=utl_file.fopen('MY_DIR','emp.txt','w');

分享到:
评论

相关推荐

    oracle 存储过程导出excel

    oracle 存储过程导出excel oracle 存储过程导出excel oracle 存储过程导出excel oracle 存储过程导出excel oracle 存储过程导出excel

    c++ builder (BCB) Oracle 导出 Excel 表

    在这个“C++ Builder (BCB) Oracle 导出 Excel 表”的场景中,开发者的目标是将Oracle数据库中的特定表格数据导出到Excel文件中。为了实现这一功能,我们需要了解以下关键知识点: 1. **ODAC组件**:ODAC是Devart...

    oracle导出表结构到excel中

    总结起来,将Oracle表结构导出到Excel涉及SQL查询、数据复制以及在Excel中的粘贴操作。对于频繁的操作,可以通过编写VBA宏或使用专业工具来自动化这个过程,提高工作效率。在处理大数据量时,应考虑分批处理和优化...

    SQL和Oracle数据导出到EXCEL

    标题“SQL和Oracle数据导出到EXCEL”指的是在信息技术领域中,如何将数据库系统(如SQL Server或Oracle)中的数据转换并导出为Microsoft Excel格式。这通常是为了数据分析、报表制作或者与其他不支持数据库查询的...

    oracle 数据库导出excel工具

    "Oracle数据库导出Excel工具"就是为此目的设计的,它可以方便地将Oracle用户下的数据库所有表及其相关的注释转换为Excel文件,创建一个数据模型字典。 首先,这个工具的核心工作流程可能包括以下几个步骤: 1. **...

    ORACLE导出到EXCEL

    有时,我们需要将Oracle数据库中的数据导出到Excel文件,以便进行进一步的处理或分析。本文将详细介绍如何利用Java编程语言,结合JXL库来实现这一过程,特别是处理BLOB类型的文件。 首先,理解BLOB类型。BLOB...

    Oracle数据库表结构导出工具Excel

    在日常的数据库管理工作中,有时我们需要将数据库的表结构导出到其他格式,如Excel,以便进行数据分析、报表制作或共享给非技术人员。"Oracle数据库表结构导出工具Excel"就是为了解决这样的需求而设计的。 DBExport...

    Oracle数据导出到Excel

    将Oracle中的数据导出到Excel表格中

    oracle导出数据生成excel

    - CSV文件可以直接用Excel打开,只需双击文件或在Excel中选择“文件”-&gt;“打开”,然后选择CSV文件。 - 你也可以使用VBA(Visual Basic for Applications)脚本自定义导入过程,例如设置特定的列宽、格式等。 4. ...

    Oracle 导出excel npoi

    在ASP.NET环境中,你还可以将这个功能封装成Web API或ASP.NET MVC控制器,供前端调用,实现在网页上直接导出Excel报表。记住,实践是检验真理的唯一标准,动手尝试并根据需求进行调整,你的技能会不断提升。

    将(Oracle)数据库表导出到Excel,并生成文件(C#实现)

    本教程将详细阐述如何使用C#编程语言来实现在Oracle数据库中导出表格数据并将其保存为Excel文件。 首先,你需要确保已经安装了以下组件: 1. Oracle客户端或者ODP.NET(Oracle Data Provider for .NET),这将允许...

    c#编写的oracle导出到excel

    c#全部源码,用到了aspose插件。...能将查询导出到excel。 能一次导出多条查询语句,语句需要用";"分割。 自动判断数据条数分页,每页65535条。 自动判断导出文件大小,若单文件大于100MB,则分文件导出

    Oracle form导出excle实例

    ### Oracle Form导出Excel实例解析 #### 核心知识点:Oracle Form与数据导出 Oracle Form是一个基于Oracle数据库的应用开发工具,它提供了创建、编辑和运行数据库应用程序的能力。通过Oracle Form,开发者能够设计...

    从Oracle数据库导出数据到Excel批处理脚本

    可手动输入SQL语句查询/导出数据到Excel 可从SQL文件查询/导出数据到Excel 到处结果直接生成Excel文件,支持多条语句同时导出

    把oracle查询结果导出execl,独立完整

    在日常工作中,我们经常需要将Oracle数据库中的查询结果导出到Excel,以便进行数据分析、报告制作或者共享给不熟悉数据库系统的用户。本教程将详细介绍如何使用C#编程语言实现这一功能,而无需依赖Oracle客户端或...

    db访问工具 database访问工具 Oracle表结构导出Excel工具 附使用图解

    db访问工具 database访问工具 Oracle表结构导出Excel工具 由于是日文版,附使用图解,详细介绍如何Oracle表结构导出Excel 本人真实感言:真的很强大,不使不知道一使吓一跳。

    excel与oracle之间的导入导出工具

    描述中提到"自己写的一个excel与oracle之间的数据导出导入的小工具,c#+oracel+excel",这表明该工具是由C#编程语言编写的,并且利用了Oracle数据库驱动和Excel相关的API来实现功能。C#是一种面向对象的、类型安全的...

    oracle导出excel和excel导入oracle的经验总结.docx

    以下是关于"Oracle导出Excel和Excel导入Oracle"的知识点总结: 1. **Oracle导出Excel** - **方法一**:通过Oracle SQL Developer进行导出。在SQL Developer中,用户可以在SQL窗口执行查询,然后利用工具栏的...

    数据库大量数据导出Excel

    POI3.8版本之前的版本处理大量数据的导出Excel效果不是很理想,主要在与Excel2003版本单个Sheet的行限制为65536,大量数据的导出得分多个Sheet,针对这一点,客户就不会满意。其次,在实验过程中,大数据量的导出很...

    oracle导出数据字典

    oracle导出excel的数据字典sql,根据该sql可以导出数据字典。

Global site tag (gtag.js) - Google Analytics