1934: INSERT/UPDATE failed because the following SET options have incorrect settings (falló INSERT/UPDATE porque estas opciones SET tienen valores incorrectos)
SQL Server¿Qué significa?
Una operación DML (INSERT/UPDATE/DELETE) falló porque las opciones SET necesarias estaban configuradas de forma incorrecta. Suele ocurrir cuando no se cumplen los ajustes SET obligatorios para vistas indexadas, índices sobre columnas calculadas, índices filtrados o índices espaciales/XML.
¿Por qué ocurre?
La tabla/vista afectada tiene un objeto que requiere opciones SET concretas (sobre todo QUOTED_IDENTIFIER y ANSI_NULLS en ON, NUMERIC_ROUNDABORT en OFF, etc.), pero las opciones SET actuales de la sesión no cumplen ese requisito. Lo provocan drivers de cliente antiguos o scripts que establecen explícitamente opciones SET incorrectas.
Cómo solucionarlo
Establezca las opciones necesarias en la conexión/sesión: SET QUOTED_IDENTIFIER ON; SET ANSI_NULLS ON; SET ANSI_PADDING ON; SET ANSI_WARNINGS ON; SET CONCAT_NULL_YIELDS_NULL ON; SET ARITHABORT ON; SET NUMERIC_ROUNDABORT OFF; Asegúrese de que el driver de la aplicación envíe correctamente estas opciones al conectarse. El mensaje de error nombra las opciones incorrectas; corríjalas.
Más entradas de este motor
- 5061ALTER DATABASE failed because a lock could not be placed on database
- 3702Cannot drop database because it is currently in use (no se puede eliminar la base de datos porque está en uso)
- 15138The database principal owns a schema in the database, and cannot be dropped (el principal es propietario de un esquema de la base de datos y no puede eliminarse)
- 468Cannot resolve the collation conflict
- 4864Bulk load data conversion error (type mismatch or invalid character) (error de conversión de datos en la carga masiva (tipo no coincidente o carácter no válido))
- 916The server principal is not able to access the database under the current security context (el principal de servidor no puede acceder a la base de datos en el contexto de seguridad actual)