REVISIÓN: SELECT INTO comportamiento de bloqueo

Seleccione idioma Seleccione idioma
Id. de artículo: 153441 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Nº DE ERROR: 14818 (DCR 6.50)
Expandir todo | Contraer todo

Resumen

En SQL Server 6.5, SELECT INTO ajusta dentro de una transacción. Las tablas creadas mediante el uso de SELECT INTO se mantenga para las propiedades de transacción ACID (atomicidad, coherencia, aislamiento y durabilidad). Esto también significa que los recursos de sistema, como páginas, extensiones y bloqueos, se mantienen durante la duración de la instrucción SELECT INTO. Con objetos de sistema más grandes, esto conduce a la condición que se pueden bloquear muchas tareas internas por otros usuarios realizar las instrucciones SELECT INTO. Por ejemplo, en servidores de alta actividad, muchos usuarios ejecutando la herramienta Administrador corporativo de SQL para supervisar los procesos del sistema pueden bloquear en ellos, lo que conduce a una condición donde la aplicación de SEM parece dejar de responder.

Más información

Cuando actualiza a SQL Server 6.5 Service Pack 1, SELECT INTO de las características de bloqueo es una característica configurable de sistema. SELECT INTO con una transacción de ajuste permanece el comportamiento predeterminado. Para los usuarios deseen no mantiene bloqueos de catálogo de sistema en la actividad, un indicador de traza se ha agregado para permitir estas operaciones. Para aplicar el indicador de traza, iniciar el servidor con el - T5302 parámetro de la línea de comandos o desde dentro de una ventana de consulta, utilice los comandos siguientes:
dbcc traceon (3604)
go
dbcc traceon (5302)
go
				

Cuando se aplica el indicador de traza 5302 y SELECT INTO se produce un error, aún se crea la tabla. Tenga en cuenta que se aplica el comportamiento de bloqueo que seleccione para todas las bases de datos en el servidor.



Es importante comprender que incluso con seguimiento indicador 5302 habilitado, si SELECT INTO se ejecuta en SQL Server 6.5 en el contexto de una transacción explícita (es decir, BEGIN TRAN), las tablas del sistema todavía se bloqueará hasta que finalice la transacción. Esto es porque, aunque el indicador de traza permite al servidor realizar SELECT INTO en operaciones de 2, la creación de la fase de la tabla de destino está vigente una instrucción de DDL dentro de una transacción.

Cualquier instrucción CREATE TABLE dentro de una transacción mantienen bloqueos EX_PAGE en sysobjects, sysindexes y syscolumns. SQL Server 6.0 no permitían SELECT INTO para ejecutarse como parte de una transacción explícita definida por el usuario. Intentar hacerlo resultaría en 226 de mensaje, "SELECT INTO no permitido en transacciones de múltiples instrucciones de comandos".

Nota: Este problema no se aplica a SQL Server 7.0 y versiones posteriores.

Propiedades

Id. de artículo: 153441 - Última revisión: jueves, 6 de febrero de 2014 - Versión: 3.1
La información de este artículo se refiere a:
  • Microsoft SQL Server 6.5 Standard Edition
Palabras clave: 
kbnosurvey kbarchive kbmt kbfix kbnetwork KB153441 KbMtes
Traducción automática
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): 153441

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com