Operações com arquivos utilizando OLE Automation no SQL Server

Olá Pessoal,
Boa noite!

Lembram do post que eu fiz sobre Habilitando OLE Automation via T-SQL no SQL Server onde eu falei que iria postar sobre umas funções legais exemplificando a utilização do OLE Automation no SQL Server? Então, é esse o post 🙂

Para não colocar muitas Stored Procedures e Functions aqui no post e deixá-lo muito extenso, criei um arquivo compactado com o código-fonte dos scripts que estão disponíveis aqui e vou apenas explicar a utilização de cada um deles.

fncArquivo_Existe_FSO
fncArquivo_Existe_FSO: Função que retorna se um arquivo existe (1) ou não (0).
Utilização: SELECT CLR.dbo.fncArquivo_Existe_FSO(‘C:\Teste.txt’)

Código-fonte:

fncLer_Arquivo_FSO
fncLer_Arquivo_FSO: Função que lê o conteúdo de um arquivo e retorna uma tabela onde cada linha do arquivo é uma linha na tabela.
Utilização: SELECT * FROM CLR.dbo.fncLer_Arquivo_FSO(‘C:\Teste.txt’)

Código-fonte:

stpApaga_Arquivo_FSO
stpApaga_Arquivo_FSO: Stored Procedure que apaga fisicamente um arquivo.
Utilização: EXEC CLR.dbo.stpApaga_Arquivo_FSO ‘C:\Teste.txt’

Código-fonte:

stpCopia_Arquivo_FSO
stpCopia_Arquivo_FSO: Stored Procedure que copia fisicamente um arquivo de um diretório para outro.
Utilização: EXEC CLR.dbo.stpCopia_Arquivo_FSO ‘C:\Teste.txt’, ‘C:\Arquivos\Novo_Arquivo.log’, 1 — Vai sobrescrever se já existir (3º parâmetro)

Código-fonte:

stpEscreve_Arquivo_FSO
stpEscreve_Arquivo_FSO: Script que grava o conteúdo de uma variável ou texto em um arquivo no disco.
Utilização: EXEC CLR.dbo.stpEscreve_Arquivo_FSO(‘C:\Teste.txt’, ‘Teste de Escrita em Arquivo’)

Código-fonte:

stpInformacoes_Arquivo_FSO
stpInformacoes_Arquivo_FSO: Stored Procedure que retorna informações sobre o arquivo, como tipo, tamanho, data de criação e modificação.
Utilização: EXEC CLR.dbo.stpInformacoes_Arquivo_FSO(‘C:\Teste.txt’)

Código-fonte:

stpMove_Arquivo_FSO
stpMove_Arquivo_FSO: Stored Procedure que move fisicamente um arquivo de um diretório para outro.
Utilização: EXEC CLR.dbo.stpMove_Arquivo_FSO ‘C:\Teste.txt’, ‘C:\Arquivos\Novo_Arquivo.log’, 1 — Vai sobrescrever se já existir (3º parâmetro)

Código-fonte:

Viram como é fácil e simples? Agora vocês já podem brincar com arquivos sem se descabelar tendo que criar as funções e stored procedures usando C# e compilando o database CLR (Caso você queira utilizar o CLR para manipulação de arquivos ao invés do OLE Automation, O QUE EU RECOMENDO, acesse o post Como listar, ler, escrever, copiar e mover arquivos com o CLR (C#)).

De brinde, vou passar mais uma stored procedure pra vocês, que tem a função de a partir de um caminho de arquivo, separar o diretório e o arquivo em duas variáveis distintas:

stpArquivo_Separa_Nome_Diretorio:

Modo de utilização:

Isso é tudo pessoal!
Até a próxima postagem.

SQL, sql server, sql server 2008, sql server 2008 R2, Oracle, Oracle Database, Oracle 11g, Oracle 10g, Oracle 12c, MySQL, Firebird, Consultoria, Consultor, Programador, Programação. Desenvolvedor, Analista de Sistemas, DBA, Criação de website, Criação de Sistema Web, Vitória, Vila Velha, Guarapari, Espírito Santo, ES, Consultoria SQL em VItória, Treinamento, Curso, Prestação de serviço, prestar serviço, freelancer, freela, banco de dados, consultoria em banco de dados, consultor de banco de dados

Deixe uma resposta