PRB: Error "Error de INSERT" al actualizar tabla de referencia en una vista indizada

Seleccione idioma Seleccione idioma
Id. de artículo: 305333 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

Síntomas

Al ejecutar un procedimiento almacenado o instrucción SQL INSERT directamente, que intenta insertar una fila en una tabla que se hace referencia en una vista indizada puede producir el error siguiente:
INSERT porque las siguientes opciones SET tienen una configuración incorrecta: 'ARITHABORT'
Además, este error puede producirse incluso si "SET ARITHABORT ON" se incluye en el lote o procedimiento almacenado que intenta INSERT.

Causa

Para insertar correctamente una fila en una tabla que se hace referencia en una vista indizada, la configuración de SQL ARITHABORT debe establecerse en ON. Además, se debe ejecutar la instrucción que se aplica esta configuración en su propio lote. Dado que los procedimientos almacenados contienen sólo un lote, agrega la instrucción al procedimiento no funciona.

Solución

Para resolver este problema, agregue el siguiente código de ADO a la aplicación después de abrir la conexión a la base de datos:
MyConnection.Execute "SET ARITHABORT ON"
				
donde MiConnection es una referencia al objeto de conexión ADO se utiliza para ejecutar el procedimiento almacenado que realiza una INSERCIÓN o la instrucción SQL INSERT.

Estado

Este comportamiento es por diseño.

Más información

SET ARITHABORT ON es una de las opciones que no se establece automáticamente para conexiones que utilizan el proveedor OLE DB para SQL Server o el controlador ODBC de SQL Server. Dado que las conexiones OLE DB y ODBC no especifican un valor ARITHABORT, predeterminado de conexiones en el valor predeterminado de servidor, que es ARITHABORT OFF.

Referencias

Para obtener más información, vea los temas "Diseñar una vista de indizadas" y "Crear un índice" en los libros en pantalla de SQL Server 2000.

Propiedades

Id. de artículo: 305333 - Última revisión: jueves, 08 de mayo de 2003 - Versión: 2.2
La información de este artículo se refiere a:
  • Microsoft ActiveX Data Objects 2.6 sobre las siguientes plataformas
    • Microsoft SQL Server 2000 Standard Edition
  • Microsoft ActiveX Data Objects 2.7 sobre las siguientes plataformas
    • Microsoft SQL Server 2000 Standard Edition
Palabras clave: 
kbmt kbprb KB305333 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): 305333

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