PL/Sql esporta file

mercoledì 16 marzo 2011 - 11.27
Tag Elenco Tags  VB.NET  |  Visual Studio 2005  |  Oracle 11g  |  Oracle 10g

lanfra Profilo | Senior Member

Salve, ho un problema con il mo package. Stò provando ad esportare dei dati da tabella a file TXT, e per fare questo ho creato una procedure all'interno di un package:


PROCEDURE ESPORTA_FILE(pn_ticket NUMBER, pn_errore out number) IS LF_FILE UTL_FILE.FILE_TYPE; LC_NOME_FILE VARCHAR2(50); LC_DIRECTORY VARCHAR2(20) DEFAULT 'C:\'; --VARIABILI APPOGGIO LC_CODICE COMUNI.CODICE%TYPE; LC_DESCRIZIONE COMUNI.DESCRIZIONE%TYPE; LC_PROV_CODICE COMUNI.PROV_CODICE%TYPE; CURSOR C_COMUNI IS SELECT CODICE, DESCRIZIONE, PROV_CODICE FROM COMUNI; BEGIN pn_errore := 0; ERRORE.SCRIVI_TXT ('Inizio Esportazione' ); --file LC_NOME_FILE := 'ESATRI.TXT'; LF_FILE := utl_file.fopen(LC_DIRECTORY,LC_NOME_FILE,'w'); --cursore Open C_COMUNI; LOOP fetch C_COMUNI into lc_codice,lc_descrizione,lc_prov_codice; UTL_FILE.PUT_LINE(LC_NOME_FILE,LC_CODICE); UTL_FILE.PUT_LINE(LC_NOME_FILE,LC_DESCRIZIONE); UTL_FILE.PUT_LINE(LC_NOME_FILE,LC_PROV_CODICE); END LOOP; --CHIUDO IL FILE UTL_FILE.FCLOSE(LC_NOME_FILE); ERRORE.SCRIVI_TXT ('Fine Esportazione' ); END;


Ma quando compilo, ho il seguente messaggio d'orrore

Errore(34,7): PLS-00306: numero o tipi di argomenti errati nella chiamata di 'PUT_LINE'

Ma non riesco a capire dove commetto l'errore, la sintassi mi sembra corretta.
Qualcuno può consigliarmi a riguardo?

Ringrazio in anticipo per aiuti...
Lanfra

micto27 Profilo | Senior Member

Ciao,
secondo me è sbagliato il primo argomento del PUT_LINE
devi usare LF_FILE e non LC_NOME_FILE

Idem nella chiusura UTL_FILE.FCLOSE

Michele
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5