Fazendo upload de um arquivo para um varbinary no SQL Server

4

Existe alguma maneira de fazer upload de um arquivo para um varbinary no SQL Server sem escrever um programa para fazer isso?

    
por pupeno 07.07.2009 / 19:57

3 respostas

3

Parece que isso pode funcionar para você ... link

INSERT INTO Files(File, Name)
SELECT
    * FROM OPENROWSET(BULK 'C:\file.bin', SINGLE_BLOB) AS File
    "file.bin" AS Name
GO
    
por 07.07.2009 / 20:05
3

Sim, se você criar uma tabela "holding" com apenas uma coluna varbinary ou de imagem, poderá usar o utilitário bcp para fazer o upload diretamente nesta tabela. Você precisará saber o tamanho do arquivo em bytes antes de fazer isso, pois é a resposta para um dos prompts.

bcp <database_name.schema.table_name> in <your_binary_file> -S server -T

Substitua -T por informações de autenticação apropriadas, se necessário. Em seguida, responda aos quatro prompts:

Enter the file storage type of field col [image]:
Enter prefix-length of field col [4]: 0
Enter length of field col [0]: <file_size_in_bytes>
Enter field terminator [none]:
    
por 07.07.2009 / 20:04
1

Após o link de Sam, eu criei esta versão de programação:

INSERT INTO Files(File, Name)
SELECT
    * FROM OPENROWSET(BULK 'C:\file.bin', SINGLE_BLOB) AS File
    "file.bin" AS Name
GO

Estou aceitando a resposta de Sam porque me enviou na direção certa, esse código deve ser adicionado a essa resposta.

    
por 07.07.2009 / 21:54