4834: You do not have permission to use the bulk load statement (no tiene permiso para usar la sentencia de carga masiva)
SQL Server¿Qué significa?
Carece del permiso necesario para ejecutar una carga masiva con BULK INSERT (u OPENROWSET BULK). La carga masiva accede directamente al sistema de archivos y a los recursos del servidor, por lo que requiere un privilegio aparte.
¿Por qué ocurre?
El login carece del permiso de nivel de servidor ADMINISTER BULK OPERATIONS o no es miembro del rol de servidor bulkadmin (Azure SQL Database requiere en su lugar ADMINISTER DATABASE BULK OPERATIONS a nivel de base de datos). También se requiere permiso INSERT sobre la tabla de destino y acceso de lectura al archivo de origen para la cuenta de servicio de SQL Server.
Cómo solucionarlo
Conceda el permiso necesario: GRANT ADMINISTER BULK OPERATIONS TO login_name; (nivel de servidor) o añada el usuario al rol correspondiente. Azure SQL DB usa ADMINISTER DATABASE BULK OPERATIONS. Asegúrese también de que la cuenta de servicio de SQL Server tenga permiso de lectura sobre el archivo/recurso compartido de destino. Siguiendo el principio de mínimo privilegio, concédalo solo a las cuentas que lo necesiten.
Más entradas de este motor
- 1785Introducing FOREIGN KEY constraint may cause cycles or multiple cascade paths (la restricción FOREIGN KEY puede provocar ciclos o varias rutas de cascada)
- 9421XML parsing: illegal xml character
- 15151Cannot find the object/principal because it does not exist or you do not have permission (no se encuentra el objeto/principal porque no existe o no tiene permiso)
- 10928Resource limit for the database has been reached (Azure SQL) (se alcanzó el límite de recursos de la base de datos)
- 40544The database has reached its size quota (Azure SQL) (la base de datos alcanzó su cuota de tamaño)
- 40613Database is not currently available (Azure SQL) (la base de datos no está disponible en este momento)
- 102Incorrect syntax near 'token'