Export query result to txt file

Hello,
I'm trying to export a query result to txt file but I facing some problems.
I'm using the comand below:
set echo off newpage 0 space 0 pagesize 0 feed off head off trimspool on
set colsep ,
spool C:\estados.txt
select id_estado,cod_estado,nme_estado from tb_estado;
spool off
First problem: My select statement is being writen on my estados.txt
Second problem: The results are being writen with a lot of blank spaces in start of line, for example, instead of write "1,AC,Acre" the line is write as " 1,AC,Acre".
Third problem: The "spool off" statement is being written on my estados.txt
How could I solve it?
Thanks

1. Works here - what version of SQL*PLUS are you using?
2. If you want to prevent spaces, you have to write your SELECT like this:
select id_estado || ',' || cod_estado || ',' || nme_estado from tb_estado;Note: not tested.
3. See 1.
C.

Similar Messages

  • Export query results to flat file with dynamic filename

    Hi
    Can anybody can point me how to dynamic export query serults set to for example txt file using process flows in OWB.
    Let say I have simple select query
    select * from table1 where daterange >= sysdate -1 and daterange < sysdate
    so query results will be different every day because daterange will be different. Also I would like to name txt file dynamicly as well
    eg. results_20090601.txt, results_20090602.txt, results_20090603.txt
    I cant see any activity in process editor to enter custom sql statment, like it is in MSSQL 2000 or 2005
    thanks in advance

    You can call existing procedures from a process flow the procedure can create the filename with whatever name you desire. OWB maps with file as target can also create a file with a dynamic name defined by an expression (see here ).
    Cheers
    David

  • Export query results into .csv file?

    Hello I have a T-SQL script that gets row counts for a specified date range and then needs to loop (by incrementing +1 day to get the next day's counts) for a large date range.  I'm aiming to output & append each query results day counts
    into a .csv file via a SQL Agent job since this will take quite a while to complete.
    Would using the following as an example template...
    INSERT INTO OPENROWSET('Microsoft.ACE.OLEDB.12.0','Text;Database=D:\;HDR=YES;FMT=Delimited','SELECT * FROM [FileName.csv]')
    SELECT Field1, Field2, Field3
    FROM DatabaseName
    ...be the method or something else?
    If this is good to use I've tried running this but get the following error:
    Msg 7357, Level 16, State 2, Line 76
    Cannot process the object "SELECT * FROM [FileName.csv]". The OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)" indicates that either the object has no columns or the current user does not have permissions
    on that object.
    Thanks in advance.

    Hi Techresearch7777777,
    The error in your post says that the file FileName.csv has to be created with the column names in the first row. Like:
    Field1,Field2,Field3
    Either you can create a schema.ini file under the same folder:
     [FileName.csv]
     Format=CSVDelimited
     ColNameHeader=False
     Col1=Field1 [DataType]
     Col2=Field2 [DataType]
     Col3=Field3 [DataType]
    For the [DataType],you can reference
    Schema.ini File (Text File Driver)
    If you have any question, feel free to let me know.
    Eric Zhang
    TechNet Community Support

  • How to export query results

    How can I export query results from sqlplus on the command line? Are there ways to specify the format such as CSV, TAB, XML, etc?
    I've seen one approach that involves creating a shell script and piping the output to a file:
    #!/bin/sh
    sqlplus user/password <<__EOF__
    set heading off;
    set newpage none;
    select f1, ',', f2, ',', f3 from some_table;
    __EOF__
    Then pipe the output to a file. Is there a simpler solution to this?

    http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:235814350980

  • Saving query result to a file

    Hi,
    I have a sql*developer version 1.5 but i am getting a problem while saving query result to a file. When i click on "script output "-> "file icon" nothing is showing.
    Can anyboby guide me whether its a bug or some other settings are required.
    I have oracle 10.2.0.3 working on linux.
    Thanks & regards
    Girish

    I am getting the same thing and as far as I know it is a bug.
    As a workaround, you can either copy the contents of the script output or run the query as a statement (F9) instead of as a script (F5) and export the query results from the results tab.

  • Exporting Query Result to OpenOffice

    Hello,
    We would like to export Query Result from Web Application to a file which could be opened in OpenOffice.
    Exporting data in XLS format doesn't work because XLS file is created with MS VML Markup with couln't be read by OpenOffice.
    Does someone already deals with this kind of issue ?
    How do you overcome this problem ?
    Thanks in advance for your answer
    Laurent

    Hi Laurent,
    Can you try saving the file in .csv.
    ad try opening it in openoffice.
    Hope this helps
    PV

  • Write big query results into a file  ? ?  ?

    Hi all,
    The problem is: I want to write a simple query results into a file. I have no idea how to do that. Only thing I know is utl_ functions. Please advise GURUS how can I use them for big queries. Any example will be really appreciable.
    Thank you in advance.
    Message was edited by:
    v838

    hi,
    i´ld do it like that:
    filedir     varchar2(30):= '/usr/frajo/';
    filename     varchar2(30):= 'file.txt';
    fhandle     utl_file.file_type;
    cursor x is
    select ... (what ever)
    begin
         fhandle := utl_file.fopen (filedir, filename,'a');
         open x;
         loop
              fetch x into (what ever)
              exit when x%notfound;
              utl_file.put_line (fhandle,'text and you results');
         end loop;
         utl_file.fclose(fhandle);
    end;
    happy xmas. franz

  • Export query results to excel from forms

    Are there any ways to export query results to MS Excel format files from a form.
    Thanks.

    Here's my working code out of one of my forms that does this:
    PROCEDURE export_transactions_to_excel IS
    -- Declare the ole objects
    application ole2.obj_type;
    workbooks ole2.obj_type;
    workbook ole2.obj_type;
    worksheets ole2.obj_Type;
    worksheet ole2.obj_type;
    cell ole2.obj_type;
    -- my variables
    rowCounter Number := 1;
    local_cursor_Record number := :System.Cursor_Record;
    old_cursor_Style varchar2(100);
    errors_occurred boolean := false;
    Ole_Error Exception;
    pragma exception_init( Ole_Error, -305500 );
    my_alert_id ALERT;
    alert_response NUMBER;
    procedure place_value_in_cell( rownum_in in number
    , colnum_in in number
    , value_in in varchar2 )
    is
    -- Declare handles to OLE argument lists
    args ole2.list_Type;
    begin
    args := ole2.create_arglist;
    ole2.add_arg(args, rownum_in); /* row number */
    ole2.add_arg(args, colnum_in); /* column number */
    -- the next line is for excel97
    -- cell := ole2.invoke_obj( worksheet, 'Cells', args );
    cell := ole2.get_obj_property( worksheet, 'Cells', args );
    ole2.Destroy_arglist( args );
    ole2.set_property( cell, 'Value', value_in );
    ole2.release_obj (cell);
    end place_value_in_cell;
    procedure SaveSpreadsheet
    is
    args ole2.List_Type;
    vDateStamp varchar2(20);
    begin
    vDateStamp := to_char(sysdate,'mmddyyyy') &#0124; &#0124; '_' &#0124; &#0124; to_char(sysdate,'hh24miss');
    args := OLE2.CREATE_ARGLIST;
    OLE2.ADD_ARG(args, 'C:\PAPRETCC_' &#0124; &#0124; vDateStamp &#0124; &#0124; '.XLS');
    OLE2.INVOKE(worksheet, 'SaveAs', args);
    OLE2.DESTROY_ARGLIST(args);
    --args := Ole2.Create_ARgList;
    ole2.invoke( application, 'Quit' );
    end SaveSpreadSheet;
    procedure Open_EXCEL_Workbook is
    Begin
    application := ole2.create_obj('Excel.Application');
    --ole2.set_property( application, 'Visible', 'True' );
    -- Return object handle to the Workbooks collection
    workbooks := ole2.get_obj_property( application, 'Workbooks' ); -- invoke_obj w/ excel 97
    -- Add a new Workbook object to the Workbooks collection
    workbook := ole2.invoke_obj( workbooks, 'Add' );
    -- return object handle to the Worksheets collection for the
    -- Workbook
    worksheets := ole2.get_obj_property( workbook, 'Worksheets' ); -- invoke_obj w/ Excel97
    -- Add a new Worksheet to the Worksheets collection
    worksheet := ole2.invoke_obj( worksheets, 'Add');
    end open_EXCEL_workbook;
    PROCEDURE Write_Column_Headers IS
    BEGIN
    place_value_in_cell(rowCounter,1, 'Payer Name');
    place_Value_in_cell(rowCounter,2, 'Payer Address');
    place_value_in_cell(rowCounter,3, 'SSN');
    place_value_in_cell(rowCounter,4, 'Account');
    place_value_in_cell(rowCounter,5, 'Refund Receipt');
    place_value_in_cell(rowCounter,6, 'Pretax Allocation');
    place_value_in_cell(rowCounter,7, 'Tax Allocation');
    place_value_in_cell(rowCounter,8, 'Total Amount');
    place_value_in_cell(rowCounter,9, 'Orig Receipt');
    place_value_in_cell(rowCounter,10,'Orig Date');
    place_value_in_cell(rowCounter,11,'TR Number');
    place_value_in_Cell(rowCounter,12,'Date');
    place_Value_in_cell(rowCounter,13,'Status');
    place_value_in_cell(rowCounter,14,'Vt Number');
    rowCounter := rowCounter + 1;
    END Write_Column_Headers;
    PROCEDURE Export_The_Data IS
    original_receipt number;
    original_date DATE;
    original_transmittal_number number;
    BEGIN
    -- Return object handle to cell A1 on the Worksheet
    Go_block('Transactions');
    First_Record;
    LOOP
    IF alert_response = ALERT_BUTTON2 or
    (alert_response = ALERT_BUTTON1 and nvl(:transactions.rg_approval,'N') <> 'N' )
    -- :system.record_status = 'CHANGED')
    then
    place_value_in_cell( rowCounter, 1, :TRANSACTIONS.NDB_PAYEE_NAME );
    place_value_in_cell( rowCounter, 2, nvl(:TRANSACTIONS.NDB_PAYEE_ADDRESS,'unknown') );
    place_value_in_cell( rowCounter, 3, nvl(:TRANSACTIONS.NDB_SSN,'unknown') );
    place_value_in_cell( rowCounter, 4, :transactions.NDB_DESCRIPTION );
    place_value_in_cell( rowCounter, 5, to_char(:Transactions.transaction_group_EID) );
    place_Value_in_cell( rowCounter, 6, to_char(:transactions.ndb_pretax_amount) ); -- chg
    place_ value_in_Cell( rowCounter, 7, to_char(:transactions.ndb_tax_amount) );
    place_value_in_cell( rowCounter, 8, to_char(:transactions.amount_including_taxes) );
    original_receipt := revenue_pkg.original_receipt_number(
    :transactions.transaction_group_eid,
    :transactions.allocation_eid,
    :transactions.allocation_table );
    original_date := revenue_pkg.original_receipt_date(
    :transactions.transaction_group_eid,
    :transactions.allocation_eid,
    :transactions.allocation_table );
    original_transmittal_number := revenue_pkg.transmittal_number_for_receipt(original_receipt);
    place_value_in_cell( rowCounter, 9, nvl(to_char(original_receipt),'unknown') );
    place_value_in_cell( rowCounter, 10, nvl(to_char(original_date,'mm/dd/yyyy hh24:mi:ss'),'unknown') );
    place_value_in_cell( rowCounter, 11, nvl(to_char(original_transmittal_number),'unknown') );
    -- COMPTROLLER COLUMNS
    IF ( alert_response = ALERT_BUTTON1 and nvl(:transactions.rg_approval,'N') <> 'N' )
    THEN
    place_value_in_cell( rowCounter, 12, to_Char(sysdate,'mm/dd/yyyy') );
    place_value_in_cell( rowCounter, 13, nvl(:transactions.rg_approval,'N') );
    place_value_in_cell( rowCounter, 14, nvl(to_char(:location.vt_number),'NULL') );
    END IF;
    End If;
    exit when :SYSTEM.LAST_RECORD = 'TRUE';
    NEXT_RECORD;
    rowCounter := rowCounter + 1;
    END LOOP;
    END Export_The_Data;
    /* ----------------------------------- main procedure --------------------------------------*/
    BEGIN
    Begin
    my_alert_id := Find_Alert('THREE_BUTTON_ALERT');
    IF NOT ID_NULL( my_alert_id ) then
    alert_Response := SHOW_ALERT( my_alert_id );
    If (alert_response = ALERT_BUTTON1) OR
    (alert_response = ALERT_BUTTON2) then
    old_Cursor_style := get_application_property( CURSOR_STYLE );
    set_application_property( CURSOR_STYLE, 'BUSY' );
    Open_EXCEL_WorkBook;
    Write_Column_Headers;
    Export_The_Data;
    Else
    Raise Form_Trigger_Failure;
    End If;
    Else
    Raise Form_Trigger_Failure;
    End If;
    exception
    when Form_Trigger_Failure then
    RAISE;
    when Ole_Error then
    AlertSend( 'There was an error exporting the data to Microsoft Excel (receipt# ' &#0124; &#0124;
    to_Char(:transactions.transaction_Group_eid) &#0124; &#0124; ')', false );
    errors_occurred := TRUE;
    when others then
    AlertSend( SQLERRM, false );
    errors_occurred := TRUE;
    End;
    Ideally, I'd like to call SaveSpreadsheet in Export_The_Data, and just ExitExcel here,
    but it prompts for whether to save the changes and I don't know how to get around that
    right now. SO, we just save and exit, regardless.
    SaveSpreadSheet;
    -- Release the OLE objects
    ole2.release_obj (worksheet);
    ole2.release_obj (worksheets);
    ole2.release_obj (workbook);
    ole2.release_obj (workbooks);
    ole2.release_obj (application);
    IF NOT errors_occurred then -- stay on the record that caused the error
    Go_Record( local_cursor_Record );
    End If;
    Set_Application_Property ( CURSOR_STYLE, old_cursor_style );
    EXCEPTION
    When Form_Trigger_Failure then
    null;
    When Others then
    AlertSend( SQLERRM );
    END export_transactions_to_excel;

  • How to save query result on the file server as excel file?

    Hi everyone,
    I need to save the the query result on the file server as excel file.
    Do you have any idees how can I do it?
    Regards
    Erwin

    i dont think you can save as excel file but you can save it as CSV use APD or RSCRM BAPI for this

  • How to save query result in excel file

    Hi all,
    How to save query result in excel file from sql*plus tool.
    thank you

    Do you really need an Excel file (binary) or a simple CSV?
    If you just need a CSV then search for DUMP_CSV at http://asktom.oracle.com or at this forum
    If you need formatting and/or multiple worksheets then you can use free tools like
    https://xml-spreadsheet.samplecode.oracle.com/ or https://exceldocumenttype.samplecode.oracle.com/
    Regards
    Marcus

  • Saving query results to text file

    Hi experts,
    I would like to save a query results to text file.
    The query has desined to the correct structure and I wish the query results will be saved automaticly to text file every time the query is running.
    The query should cintain some sql code that will save the query to text file instead of show the query results.
    What function of SQL should I add to query to achieve that goal. (The query is a long one).
    Thanks in advance,
    Joseph

    If you are talking about Query Manager, it is not difficult to do.  No matter how long your query coding is, just go to the start point of your query.  Then press CtrlShiftEnd to select all the TEXTs.  CtrlC and CtrlV will copy the text (query codes) to text file easily.
    Thanks,
    Gordon

  • Query results to a file

    I have a requirement to put the query result in a file(.csv),
    Pls let me know is there a possibility to achieve this using dbms_output package
    Thanks

    859486 wrote:
    I have a requirement to put the query result in a file(.csv),
    Pls let me know is there a possibility to achieve this using dbms_output packageNo. The DBMS_OUTPUT package is almost ALWAYS the wrong package to use. It is the most misunderstood and most frequently abused piece of PL/SQL software. So no - it is not suited in anyway to spool CSV output. In fact, trying it with a large SQLdataset can crash the Oracle server - as memory will be exhausted and the swap daemons will trash CPU utilisation.
    To read or write a physical o/s file - the typical package used is UTL_FILE. It is fairly easy using UTL_FILE to create a CSV file.
    However, there could be far better alternatives. The CSV file may be needed by a web client - in which case the file can be created as a CLOB and provided as a Mime text/csv data stream to a web browser (which usually will automatically open in Excel).
    The CSV file may need to be delivered via e-mail. In which case, the CSV file contents can be delivered via UTL_SMTP to a mail server as an e-mail attachment.
    The CSV file may be needed to be delivered to a remote server. In which case the CSV file can be created as a CLOB and this CLOB can be ftp'ed via PL/SQL to the remote server as a text file.
    So there are many options in creating and delivering a CSV file. Using DBMS_OUTPUT though is not a sensible option - ever.

  • Analyze test result from txt file

    I need some suggestions from experts. I saved test result in txt file with following format(See attachment). With this test result, I need draw waveform of 'DNBr' based on different OPmode(ADSL2P, VDSL2-8a...). The X-axis will be the value from 'DLS'.  I can creat a complicate VI to do that. But I want to if Labview has any subvi can do this job easier.
    Attachments:
    AW All in One_485847_102744SAV 5T 2h15 PM.txt ‏10 KB

    Hi Tambrook,
    read 3 (header) lines, then read the remaining data lines using "Read spreadsheet file".
    Now you have to select rows by your OPmode as there's no subVI made for your data...
    Best regards,
    GerdW
    CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
    Kudos are welcome

  • Export query results to a CSV file

    Hi,
    My requirement is I need to export the results of a query to a CSV file. Can anyone please suggest a way to include the column names also in the CSV file?
    Thanks in advance.
    Annie

    Following code is from asktom. I have modified to include column heading. This will get your desired CSV file for a given query.
    create or replace function  dump_csv( p_query     in varchar2,
                                          p_separator in varchar2
                                                        default ',',
                                          p_dir       in varchar2 ,
                                          p_filename  in varchar2 )
    return number
    AUTHID CURRENT_USER
    is
        l_output        utl_file.file_type;
        l_theCursor     integer default dbms_sql.open_cursor;
        l_columnValue   varchar2(2000);
        l_status        integer;
        l_colCnt        number default 0;
        l_separator     varchar2(10) default '';
        l_cnt           number default 0;
         l_colDesc          dbms_sql.DESC_TAB;
    begin
        l_output := utl_file.fopen( p_dir, p_filename, 'w' );
        dbms_sql.parse(  l_theCursor,  p_query, dbms_sql.native );
        for i in 1 .. 255 loop
            begin
                dbms_sql.define_column( l_theCursor, i,
                                        l_columnValue, 2000 );
                l_colCnt := i;
            exception
                when others then
                    if ( sqlcode = -1007 ) then exit;
                    else
                        raise;
                    end if;
            end;
        end loop;
        dbms_sql.define_column( l_theCursor, 1, l_columnValue, 2000 );
        l_status := dbms_sql.execute(l_theCursor);
         dbms_sql.describe_columns(l_theCursor,l_colCnt, l_colDesc);
         l_separator := '';
         for lColCnt in 1..l_colCnt
         loop          
                utl_file.put( l_output, l_separator ||  '"' || Upper(l_colDesc(lColCnt).col_name) || '"');
                   l_separator := p_separator;
         end loop;
         utl_file.new_line( l_output );
        loop
            exit when ( dbms_sql.fetch_rows(l_theCursor) <= 0 );
            l_separator := '';
            for i in 1 .. l_colCnt loop
                dbms_sql.column_value( l_theCursor, i,
                                       l_columnValue );
                utl_file.put( l_output, l_separator ||  '"' ||
                                        l_columnValue || '"');
                l_separator := p_separator;
            end loop;
            utl_file.new_line( l_output );
            l_cnt := l_cnt+1;
        end loop;
        dbms_sql.close_cursor(l_theCursor);
        utl_file.fclose( l_output );
        return l_cnt;
    end dump_csv;The original link is below.
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:95212348059
    Thanks,
    Karthick.

  • How could I  export a sqlplus query to a .txt file?

    Hi,
    I have an Oracle 10g database running on a linux e3 server.
    I have generated a SQL query using sqlplus on the server site, so the result is under the SQL>
    How could I export it to a .txt?
    Thanks a lot!
    Any advice is highly appreciated!
    Qian

    Hi, Qian,
    In SQL*Plus, say "SPOOL filename", and all the output that appears on your screen will also be written to filename, until you say "SPOOL OFF".
    Look up SPOOL in the SQL*Plus manual for more details.

Maybe you are looking for