2012-01-12 47 views

risposta

24

https://forums.oracle.com/forums/thread.jspa?threadID=447344

La sezione pertinente legge:

Non c'è alcuna impostazione per recuperare tutti i record. Non ti piacerebbe che lo sviluppatore SQL recuperi per minuti sui grandi tavoli comunque. Se, per la tabella specifica 1 , si desidera recuperare tutti i record, è possibile eseguire Control-End nel riquadro dei risultati per passare all'ultimo record. Si potrebbe volta il tempo recupero da soli, ma che varieranno sulla velocità di rete e congestione, il programma (SQL * Plus sarà più veloce di SQL Dev perché è più semplice), ecc

C'è anche un pulsante sulla barra degli strumenti che è un pulsante "Fetch All".

FWIW Fate attenzione il recupero di tutti i record, per un grande set di record potrebbe causare ad avere tutti i tipi di problemi di memoria, ecc

Per quanto ne so, SQL Developer utilizza JDBC dietro le quinte per recuperare i record e il limite è impostato dalla procedura JDBC setMaxRows(), se fosse possibile modificarlo (probabilmente non sarebbe supportato), potrebbe essere possibile modificare il comportamento di SQL Developer.

+6

Sono in esecuzione SQL Developer 3.2.20.09 e non vedo un pulsante "Recupera tutto". Ma il controllo-fine funziona alla grande. Grazie. – yellavon

+2

'Ctrl' +' Fine' funziona per ottenere tutte le righe di * qualsiasi * SQL, non solo una tabella specifica. – arun

+0

FYI non usiamo setMaxRows() –

23

Selezionare Strumenti> Preferenze> Database/Avanzate

C'è un campo di input per SQL Array Fetch dimensioni, ma consente solo l'impostazione di un massimo di 500 righe.

+0

Non c'è l'impostazione "Database" o "Avanzate" nella finestra delle mie preferenze. Sto usando PL/SQL Developer 9.0.1. Altre idee? –

+0

@PatrickSzalapski questa domanda riguarda Oracle SQL Developer non PL/SQL Developer - questo è un prodotto diverso da una società diversa – Kai

+0

Grazie, ho scoperto la distinzione pochi giorni dopo quel commento. –

7

Se si sta eseguendo uno script, invece di un'istruzione, è possibile aumentarlo selezionando Strumenti/Preferenze/Foglio di lavoro e aumentando "Righe max per stampare in uno script". Il valore predefinito è 5000, è possibile modificarlo in qualsiasi dimensione.

+0

Funziona come un fascino !!! Grazie Frank InOregon !!! –

4

È inoltre possibile modificare manualmente il file delle preferenze per impostare la dimensione di recupero dell'array su qualsiasi valore.

Il mio si trova a C:\Users\<user>\AppData\Roaming\SQL Developer\system4.0.2.15.21\o.sqldeveloper.12.2.0.15.21\product-preferences.xml su Win 7 (x64).

Il valore è in linea 372 per me e legge <value n="ARRAYFETCHSIZE" v="200"/>

ho cambiato al 2000 e funziona per me.

Ho dovuto riavviare SQL Developer.

+0

Eccellente. Questo ha funzionato perfettamente per me. – Malvon

3

premere f5 per eseguire query anziché F9. Essa vi darà tutti i risultati in un colpo solo ...

2

Strumenti-> Preferenze -> Database -> Foglio di lavoro

Inserisci dimensione desiderata in "N. max di righe per la stampa in uno script"

Salvare le modifiche .

1

dopo aver recuperato le prime 50 righe nelle finestre di query, è sufficiente fare clic una colonna per ottenere attenzione sulla finestra di query, poi una volta selezionato fare Ctrl + PageDown

Questo caricherà il set di risultati completo (tutti righe)

Problemi correlati