Estás trabajando sin conexión, espera a que vuelva la conexión a Internet

Espacio que utiliza una tabla no se libera completamente después de utilizar una instrucción DELETE para eliminar datos de la tabla en SQL Server

Extended support for SQL Server 2005 ends on April 12, 2016

If you are still running SQL Server 2005 after April 12, 2016, you will no longer receive security updates and technical support. We recommend upgrading to SQL Server 2014 and Azure SQL Database to achieve breakthrough performance, maintain security and compliance, and optimize your data platform infrastructure. Learn more about the options for upgrading from SQL Server 2005 to a supported version here.

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 913399
Nº de error: 219514 (SQL Server 8.0)
Síntomas
Después de utilizar una instrucción DELETE para eliminar datos de una tabla en Microsoft SQL Server, puede observar que el espacio que utiliza la tabla no se ha liberado completamente. Cuando intenta insertar datos en la base de datos, puede recibir el mensaje de error siguiente:
No se pudo asignar espacio para objeto 'Nombre de tabla' en la base de datos 'DatabaseName' porque es el grupo de archivos 'PRIMARY' completa.
NotaNombre de tabla representa el nombre de la tabla. DatabaseName representa el nombre de la base de datos que contiene la tabla.
Causa
Este problema se produce debido a que SQL Server sólo publica todas las páginas que utiliza una tabla de montón cuando se cumplen las condiciones siguientes:
  • Se produce una eliminación en esta tabla.
  • Un nivel de tabla se encuentra el bloqueo.
Nota Una tabla de montón es cualquier tabla que no está asociado con un índice agrupado.

Si no se cancela la asignación de páginas, otros objetos de la base de datos no se puede reutilizar las páginas.

Sin embargo, cuando se habilita un nivel de aislamiento basado en el control de versiones de fila en una base de datos de SQL Server 2005, las páginas no se puede liberar incluso si se encuentra un bloqueo de tabla. Para obtener más información acerca de los niveles de aislamiento basado en el control de versiones de fila, vea el tema "Niveles de aislamiento basado en versiones de fila Using" en libros en pantalla de SQL Server 2005.
Solución
Para evitar este problema, utilice uno de los métodos siguientes:
  • Incluir una sugerencia TABLOCK en la instrucción DELETE, si una fila nivel de aislamiento basado en versiones no está habilitado. Por ejemplo, utilice una instrucción que es similar al siguiente:
    DELETE FROM <TableName> WITH (TABLOCK)
    Nota <TableName></TableName> representa el nombre de la tabla.
  • Utilice la instrucción TRUNCATE TABLE si desea eliminar todos los registros de la tabla. Por ejemplo, utilice una instrucción similar a la Después de:
    TRUNCATE TABLE <TableName>
  • Crear un índice agrupado en una columna de la tabla. Para obtener más información obtener información acerca de cómo crear un índice agrupado en una tabla, vea "crear tema de un índice agrupado"en libros en pantalla de SQL Server.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Se refiere a:".

Warning: This article has been translated automatically

Propiedades

Id. de artículo: 913399 - Última revisión: 03/10/2013 18:52:00 - Revisión: 3.0

Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Express Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Personal Edition, Microsoft SQL Server 7.0 Standard Edition

  • kbexpertiseadvanced kbprb kbmt KB913399 KbMtes
Comentarios
=document.createElement('meta');m.name='ms.dqp0';m.content='true';document.getElementsByTagName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?">