limite de registro sql express
24/10/2019
0
Uso o sql express 2014, e estou tentando inserir 5000 registros e só vai até 1000.
Até onde sei, tem limite de 10GB por base. Meu arquivo .mdf e está em 5000KB
Alguem me dizer porque não consigo inserir mais registro?
Simone
Posts
24/10/2019
Emerson Nascimento
o que pode ter acontecido: teu banco não alcançou 10GB de tamanho, mas o processo pode ter alcançado 1GB de memória.
24/10/2019
Simone
o que pode ter acontecido: teu banco não alcançou 10GB de tamanho, mas o processo pode ter alcançado 1GB de memória.
Como faço pra saber se é esse o problema de fato?
24/10/2019
Fernando Junior
o que pode ter acontecido: teu banco não alcançou 10GB de tamanho, mas o processo pode ter alcançado 1GB de memória.
Como faço pra saber se é esse o problema de fato?
Talvez um e-mail para o suporte da Microsoft.
24/10/2019
Simone
o que pode ter acontecido: teu banco não alcançou 10GB de tamanho, mas o processo pode ter alcançado 1GB de memória.
Como faço pra saber se é esse o problema de fato?
Talvez um e-mail para o suporte da Microsoft.
Usei esse script para saber o tamanho da tabela
DECLARE @table_name VARCHAR(500) ; DECLARE @schema_name VARCHAR(500) ; DECLARE @tab1 TABLE( tablename VARCHAR (500) collate database_default , schemaname VARCHAR(500) collate database_default ); DECLARE @temp_table TABLE ( tablename sysname , row_count INT , reserved VARCHAR(50) collate database_default , data VARCHAR(50) collate database_default , index_size VARCHAR(50) collate database_default , unused VARCHAR(50) collate database_default ); INSERT INTO @tab1 SELECT t1.name, t2.name FROM sys.tables t1 INNER JOIN sys.schemas t2 ON ( t1.schema_id = t2.schema_id ); DECLARE c1 CURSOR FOR SELECT t2.name + '.' + t1.name FROM sys.tables t1 INNER JOIN sys.schemas t2 ON ( t1.schema_id = t2.schema_id ); OPEN c1; FETCH NEXT FROM c1 INTO @table_name; WHILE @@FETCH_STATUS = 0 BEGIN SET @table_name = REPLACE(@table_name, '[',''); SET @table_name = REPLACE(@table_name, ']',''); IF EXISTS(SELECT OBJECT_ID FROM sys.objects WHERE OBJECT_ID = OBJECT_ID(@table_name)) BEGIN INSERT INTO @temp_table EXEC sp_spaceused @table_name, false ; END FETCH NEXT FROM c1 INTO @table_name; END; CLOSE c1; DEALLOCATE c1; SELECT t1.*, t2.schemaname FROM @temp_table t1 INNER JOIN @tab1 t2 ON (t1.tablename = t2.tablename ) ORDER BY schemaname,tablename; SELECT -100 AS l1 , ERROR_NUMBER() AS tablename , ERROR_SEVERITY() AS row_count , ERROR_STATE() AS reserved , ERROR_MESSAGE() AS data , 1 AS index_size, 1 AS unused, 1 AS schemaname
me retornou isso
tablename row_count reserve Data index_size unused schemaname tabelaXYZ 1003 56 KB 40 KB 16 KB 0 KB dbo
Seria isso mesmo?
25/10/2019
Emerson Nascimento
SELECT DB.name, SUM(size)*8 AS Tamanho_KB, CAST(ROUND((SUM(size)*8)/1024.0,2) AS NUMERIC(15,2)) AS Tamanho_MB, CAST(ROUND((SUM(size)*8)/1024.0/1024.0,2) AS NUMERIC(15,2)) AS Tamanho_GB, CAST(ROUND((SUM(size)*8)/1024.0/1024.0/1000.0,2) AS NUMERIC(15,2)) AS Tamanho_TB FROM sys.databases DB INNER JOIN sys.master_files ON DB.database_id = sys.master_files.database_id GROUP BY DB.name
25/10/2019
Simone
SELECT DB.name, SUM(size)*8 AS Tamanho_KB, CAST(ROUND((SUM(size)*8)/1024.0,2) AS NUMERIC(15,2)) AS Tamanho_MB, CAST(ROUND((SUM(size)*8)/1024.0/1024.0,2) AS NUMERIC(15,2)) AS Tamanho_GB, CAST(ROUND((SUM(size)*8)/1024.0/1024.0/1000.0,2) AS NUMERIC(15,2)) AS Tamanho_TB FROM sys.databases DB INNER JOIN sys.master_files ON DB.database_id = sys.master_files.database_id GROUP BY DB.name
Obrigada,
Meu insert deu certo, não era problema de memória.
Clique aqui para fazer login e interagir na Comunidade :)