Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SQL Server 2005 rallenta mentre continuo ad aggiungere righe

Ecco il tuo primo problema. I database funzionano meglio se dici loro che tipo di dati hai e scegli il tipo di dati più piccolo che funziona per i tuoi dati. NVARCHAR(Max) è la scelta più inefficiente che avresti potuto fare.

E questo è il tuo secondo problema. Su ogni inserto stai controllando se hai già inserito una riga che ha gli stessi valori di un'altra riga per determinate colonne. Poiché non hai detto al database di indicizzare quelle colonne, deve controllare l'intera tabella ogni volta, quindi la tua query diventa sempre più lenta man mano che la tabella cresce. Per aggiungere una chiave primaria a una tabella esistente puoi usare questo:

ALTER TABLE table1 ADD CONSTRAINT pk_table1 PRIMARY KEY (Ticker, DateStamp)

Vedi qui per maggiori informazioni.