# Oracle PL/SQL Daten auswählen und in eine CSV abspeichern.



## BLR (8. Februar 2013)

Hallo zusammen 

ich möchte mit "Oracle sql Developer" eine tabelle auswählen:

1. select * from tabelleA

2. Das Ergebnis als CSV speichern.

Nun gibt es einen schönen Befehl: 


```
SELECT /*csv*/ * from tabelleA;
```

/*csv*/ gibt mir den Inhalt aus CSV aus.

Das möchte ich nun speichern mit dem Oracle_Element: utl_file

Leider passt da noch was nicht:

BEGIN

  DECLARE
  CSV_FILE utl_file.file_type;
  TYPE TMP_DATA IS TABLE OF VARCHAR(300) INDEX BY BINARY_INTEGER;

  CSV_FILE := utl_file.fopen( 'C:\TEMP', 'csv.txt', 'w' );

  INSERT INTO TMP_DATA
  SELECT /*csv*/ * from spotfire.users;

  CSV_FILE.put(TMP_DATA);

END;

da kommen einige Fehlermeldungen, die mich verwirren:



> Error report:
> ORA-06550: Zeile 6, Spalte 12:
> PLS-00103: Encountered the symbol "=" when expecting one of the following:
> 
> ...



Vielleicht gehe ich auch falsch heran.
Ich muss einfach alle ergebnisse einer Tabelle als CSV abspeichern.

Danke für jeden tipp.


----------



## BaseBallBatBoy (8. Februar 2013)

1. Code-Tags sind zum brauchen da, dann kann man's auch lesen...
2. DECLARE, dann BEGIN und danach END
3. Willst du das repetitiv machen (Prozedur) oder nur einmal? Falls nur einmal: im SQL Developer rechtsklick auf die Ergebnistabelle > Exportieren 
4. Falls Prozedur, schau mal hier was BluShadow geschrieben hat, evtl. hilft das: https://forums.oracle.com/forums/thread.jspa?threadID=613034


----------

