导出到excel中,如果使用sqlplus是不行的,你可以使用一个工具,plsql developer,很好用的。
把EXCEL倒入数据库,你可以用pb来做,不过首先你要用把excel变成txt文件,具体倒入你可以在网上找,很多的

解决方案 »

  1.   

    我使用的是delphi6+oracle817
    可以作界面來導入導出
      

  2.   

    使用pl/sql dev或者borland的导入导出工具,等等,很容易实现!
      

  3.   

    在sql plus 中不行,用plsql或pb都挺爽的。
    在sql plus中可以将select 的结果保存到文件
    set echo off
    set feedback off
    set heading off
    set linesize 你想要的长度
    set pagesize 一页的行数
    spool c:\文件名
    select *
    from  aaa where  ur_condition;
    spool off
      

  4.   

    楼主的要求与EXCEL没有关系只要解决从ORACLE中导入数据,以及向ORACLE中导入数据就行了!!!
      

  5.   

    常用导出数据的方式有2种:
    1、使用SQLPLUS自带的SPOOL命令;
    2、使用ORACLE自带的EXM命令。例:C:\orant\BIN>exp80 -helpExport: Release 8.0.5.0.0 - Production on 星期四 6月 16 11:28:54 2005(c) Copyright 1998 Oracle Corporation.  All rights reserved.通过输入 EXP 命令和用户名/口令,您可以
    按照“导出”提示键入参数:实例:EXP SCOTT/TIGER或者,您也可以通过输入 EXP 命令以及各种自变量来控制“导出”
    的运行方式。要指定参数,您可以使用关键字:格式:EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)
    实例:EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)
    或 TABLES=(T1:P1,T1:P2),如果 T1 是分区表USERID 必须是命令行中的第一个参数。关键字  说明(默认)        关键字      说明(默认)
    --------------------------------------------------------------------------
    USERID   用户名/口令            FULL         导出整个文件 (N)
    BUFFER   数据缓冲区的大小          OWNER        所有者用户名列表
    FILE     输出文件 (EXPDAT.DMP)     TABLES      表名称的列表
    COMPRESS 导入一个范围 (Y)   RECORDLENGTH  IO 记录的长度
    GRANTS  导出权限 (Y)            INCTYPE      增量导出类型
    INDEXES 导出索引 (Y)           RECORD       跟踪增量导出 (Y)
    ROWS    导出数据行 (Y)         PARFILE      参数文件名
    CONSTRAINTS 导出限制 (Y)    CONSISTENT   交叉表一致性
    LOG      屏幕输出的日志文件    STATISTICS  分析对象 (ESTIMATE)
    DIRECT   直接路径 (N)
    FEEDBACK 显示每 x (0) 行的进度
    POINT_IN_TIME_RECOVER   表空间时间点恢复 (N)
    RECOVERY_TABLESPACES   要恢复的表空间名称列表在没有警告的情况下成功终止导出。C:\orant\BIN>
      

  6.   

    * sqlldr
    用于将格式化的文本数据上载到表中去。
    首先编写一个控制命令的脚本文件emp.ctl,内容如下:load data
    infile 'c:\data\*.dat'
    append into table emp
    fields terminated by '|',optionally enclosed by '"'
    TRAILING NULLCOLS // trailing nullcols 表示遇到空字段依然写入到数据库表中
    (
    no float external,
    name char(20),
    age integer external,
    duty char(1),
    salary float external,
    upd_ts date(14) 'YYYYMMDDHH24MISS'
    )括号里对数据文件里每个数据域进行解释,以此在上载时与目标表进行比对。
    除了append外,还有insert、replace、truncate等方式,与append大同小异,不作更多的解释。
    再将上载数据组织成数据文件,通常以dat结尾,emp.dat内容如下:100000000001|Tom|000020|1|000000005000|20020101000000
    100000000002|Jerry|000025|2|000000008000|20020101235959分隔符要与ctl文件中fields terminated by指定的一致,这个例子中为"|"
    ctl和dat文件就绪后可以执行上载,命令为:
    sqlldr user/passwd@oracle_sid control=emp.ctl 
    *sqlplus
    *.config内容如下:
    set echo off;
    set feedback off;
    set heading off;
    set pagesize 0;
    set linesize 1000;
    set termout off;
    set trimout on;
    set trimspool on;spool ..\*.txt
    select ASYSAREACODE||','||COLUMN_59||','||VAVILLAGE from TSUCCORLSBASIC;
    spool off;在整个数据的迁移过程中,用到3个文件夹:MinZhengData,MinZhengConfig,MinZhengCtl
    依次存放的是每个表的*.CVS文件,SQLPLUS.config文件,*。CTL文件。
    对SQLPLUS.config文件 使用SQLPLUS命令:
    sqlplus user/passwd@oracle9i_sid @*.config
    导出数据到文件*.txt。
      

  7.   

    使用SQL*PLUS,构建完美excel或html输出
    作者:eygle
    出处:http://blog.eygle.com
    日期:April 25, 2005
    ? How to use Oracle BFILE | Blog首页 | 美丽的樱花 ? 
    --------------------------------------------------------------------------------
    通过SQL*PLUS我们可以构建友好的输出,满足多样化用户需求。
    本例通过简单示例,介绍通过sql*plus输出xls,html两种格式文件.
    首先创建两个脚本:
    1.main.sql
    用以设置环境,调用具体功能脚本
    2.功能脚本-get_tables.sql
    为实现具体功能之脚本
    通过这样两个脚本可以避免spool中的冗余信息,参考:
    如何去除SQLPLUS中SPOOL的冗余信息示例如下:
    1.main.sql脚本:
    [oracle@jumper utl_file]$ more main.sql
    set linesize 200 
    set term off verify off feedback off pagesize 999 
    set up html on entmap ON spool on preformat off
    spool tables.xls
    @get_tables.sql
    spool off
    exit
     2.get_tables.sql脚本:
    [oracle@jumper utl_file]$ more get_tables.sql 
    select owner,table_name,tablespace_name,blocks,last_analyzed
    from all_tables order by 1,2;
     3.执行并获得输出:
    [oracle@jumper utl_file]$ sqlplus "/ as sysdba" @mainSQL*Plus: Release 9.2.0.4.0 - Production on Mon Apr 25 10:30:11 2005Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.
    Connected to:
    Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
    With the Partitioning option
    JServer Release 9.2.0.4.0 - ProductionDisconnected from Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
    With the Partitioning option
    JServer Release 9.2.0.4.0 - Production
    [oracle@jumper utl_file]$ ls -l tables.xls 
    -rw-r--r--    1 oracle   dba         69539 Apr 25 10:30 tables.xls