Abbiamo attraversato una situazione leggermente strana. Fondamentalmente ci sono due tabelle in uno dei nostri database che vengono alimentate con tonnellate e tonnellate di informazioni di registrazione di cui non abbiamo bisogno o che ci interessano. In parte a causa di questo stiamo esaurendo lo spazio su disco.Qual è il modo migliore per eliminare tutta una tabella grande in t-sql?
sto cercando di pulire i tavoli, ma sta prendendo sempre (ci sono ancora 57,000,000+ record dopo lasciando che questo percorso attraverso il fine settimana ... e questo è solo il primo tavolo!)
Usando solo cancellare il tavolo sta prendendo per sempre e mangia spazio su disco (credo per via del log delle transazioni). In questo momento sto usando un ciclo while per eliminare i record X alla volta, mentre gioco con X per determinare cosa è effettivamente il più veloce. Ad esempio X = 1000 impiega 3 secondi, mentre X = 100.000 impiegano 26 secondi ... il che fa la matematica è leggermente più veloce.
Ma la domanda è se c'è o no un modo migliore?
(Una volta fatto questo, andando a eseguire un processo di Agente SQL andare pulire il tavolo, una volta fuori un giorno ... ma ha bisogno sgomberato prima.)
Stai rimozione di tutti i record nella tabella? –
Questo non è da GFI è? –
Non so cosa sia GFI ... quindi probabilmente no. – CodeRedick