SSMS
 sql >> Base de Dados >  >> Database Tools >> SSMS

Você não tem permissão para usar o erro de instrução de carregamento em massa


Para garantir que você tenha as permissões corretas para usar os comandos BULK, siga o seguinte
  • Expandir Segurança
  • Expandir Logins
  • Clique com o botão direito do mouse em seu nome de usuário e escolha propriedades (Uma janela de diálogo é exibida)
  • Escolha Funções de servidor
  • Selecione bulkadmin para poder usar comandos em massa ou sysadmin para poder usar qualquer comando em seu banco de dados.

Agora, em relação à consulta que você está usando, ela não está correta.

Para criar a tabela
CREATE TABLE [dbo].[Stickers] (
        [name] varchar(10)
        , [category] varchar(10)
        , [gender] varchar(1)
        , [imageData] varchar(max)
)

Para inserir os dados de grande valor
INSERT INTO  [dbo].[Stickers] ([name], [category], [gender], [imageData])
SELECT 'Red dress'
        , 'Dress'
        , 'F'
        , photo.*
FROM OPENROWSET(BULK 'C:\Users\username\Desktop\misc-flower-png-55d7744aca416.png', SINGLE_BLOB) [photo]

Algumas notas:
  • Você precisa definir um nome de correlação para o conjunto de linhas em massa após a cláusula FROM ([foto])
  • Use o prefixo da coluna direita que foi usado para a correlação do conjunto de linhas em massa (foto.*)
  • A coluna para a inserção em massa precisa ser definida como varchar(max)

Artigo do MSDN para isso:aqui