Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

O SQL Server 2005 fica mais lento à medida que continuo adicionando linhas


Aí está o seu primeiro problema. Os bancos de dados funcionam melhor se você informar a eles que tipo de dados você possui e escolher o menor tipo de dados que funcione para seus dados. NVARCHAR(Max) é a escolha mais ineficiente que você poderia ter feito.

E esse é o seu segundo problema. Em cada inserção, você verifica se já inseriu uma linha com os mesmos valores de outra linha para determinadas colunas. Como você não disse ao banco de dados para indexar essas colunas, ele precisa verificar toda a tabela a cada vez, para que sua consulta fique cada vez mais lenta à medida que a tabela cresce. Para adicionar uma chave primária a uma tabela existente, você pode usar isto:
ALTER TABLE table1 ADD CONSTRAINT pk_table1 PRIMARY KEY (Ticker, DateStamp)

Consulte aqui para mais informações.