Data Transformation Services e prestazioni

martedì 29 giugno 2004 - 10.35

volperubbia Profilo | Senior Member

Ciao a tutti,
sto realizzando una classe .NET che servirà per alimentare una base dati SQL SERVER, estrando i dati da file dbf tramite driver ODBC. L'applicativo verrà poi chiamato dal DTS di SQL SERVER.
Il problema è durante la lettura dei file dbf, nel senso che le righe lette potrebbero essere molte (nell'ordine delle centinaia di migliaia) e ciò causa un grosso dispendio di memoria.

Dim odbcCMD As OdbcCommand = New OdbcCommand("SELECT * FROM TABELLA")
odbcCMD.Connection = New OdbcConnection("Driver={Microsoft dBase Driver (*.dbf)};" & _
"Dbq=CARTELLA")
Dim adp As New OdbcDataAdapter(odbcCMD)
ADP.Fill(tbl)

Vorrei così leggere il file N record alla volta. Ho visto, ad esempio, che MySQL supporta la sintassi LIMIT (X, Y), purtroppo il driver ODBC no. Che fare?

Grazie, Davide

trinity Profilo | Guru

SELECT TOP 10 *
FROM MyTable
ORDER BY ordinamento

oppure

SET ROWCOUNT 10

SELECT *
FROM MyTable
ORDER BY ordinamento

la prima ti permette, in aggiunta, di specificare l'opzione WITH TIES e/o
PERCENT. Fai riferimento al Book On Line di SQL Server per
approfondimenti...
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5