Ir para o conteúdo do rodapé
USANDO O IRONXL
Como ler dados do Excel e inseri-los em uma tabela de banco de dados em C# | IronXL

Ler dados do Excel e inseri-los em um banco de dados com C#

Este artigo irá explorar como usar o IronXL, uma biblioteca Excel para C#, para ler dados de um arquivo Excel e inseri-los em uma tabela de banco de dados.

1. IronXL

O IronXL é uma biblioteca de software poderosa projetada para desenvolvedores .NET, fornecendo uma API fácil de usar para ler, escrever e manipular arquivos Excel em suas aplicações .NET. Ele oferece um conjunto abrangente de recursos para criar, editar e exportar planilhas Excel, tudo isso sem exigir que o Microsoft Office ou Excel estejam instalados na máquina de destino. Com suporte para uma ampla gama de formatos de arquivo, incluindo XLS, XLSX, CSV, TSV e mais, esta biblioteca facilita para desenvolvedores criar aplicativos baseados em Excel que podem ser implantados em qualquer lugar. O IronXL também oferece recursos avançados como criação de gráficos, visualização de dados e análise de dados para otimizar o processo de desenvolvimento de projetos de pequeno a grande escala.

2. Pré-requisitos

Antes que você possa usar a biblioteca IronXL para escrever em um banco de dados a partir de um arquivo Excel, você deve cumprir certos pré-requisitos. Isso inclui:

  • Ter o Visual Studio instalado no seu computador para criar um projeto C#.
  • Garantir que o ASP.NET também esteja instalado no seu sistema antes de criar um projeto C#.
  • Instalar a biblioteca IronXL no seu sistema para exportar dados. Você pode obtê-la baixando o pacote NuGet do IronXL do Gerenciador de Pacotes NuGet no Visual Studio.
  • Ter o SQL instalado no Visual Studio.

3. Criando um Novo Projeto no Visual Studio

Antes de poder utilizar a biblioteca IronXL para realizar operações relacionadas a Excel, você precisa criar um projeto .NET no Visual Studio. Embora qualquer versão do Visual Studio seja compatível, é recomendado usar a versão mais recente disponível. Você pode escolher entre vários templates de projeto, como Windows Forms e ASP.NET, com base nos requisitos do seu projeto. Para este tutorial, o modelo de projeto Aplicativo Console é recomendado para demonstrar como trabalhar com o IronXL.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 1: Janela de criação de novo projeto Criar um novo projeto

Depois de escolher o tipo de projeto, você precisa nomear o projeto e selecionar sua localização. Você também pode especificar o framework preferido, como .NET Core 6, para o projeto.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 2: Configuração do projeto Configuração do projeto

Após o novo projeto ser criado, você pode acessar o arquivo program.cs onde pode escrever o código e executar a aplicação.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 3: Projeto com código aberto Projeto com código aberto

Agora que o projeto do Visual Studio está criado, vamos instalar o IronXL.

4. Instalar IronXL

A biblioteca IronXL pode ser baixada e instalada de diferentes maneiras, mas para este artigo, duas das maneiras mais simples são abordadas:

  • Usando pacotes NuGet no Visual Studio.
  • Utilizando a linha de comando do Visual Studio.

4.1 Usando o Visual Studio

Para instalar a biblioteca IronXL, a primeira abordagem é usar o Gerenciador de Pacotes NuGet no Visual Studio. Basta abrir o Gerenciador de Pacotes NuGet e procurar por IronXL na aba Procurar. Depois de localizar o IronXL nos resultados da pesquisa, selecione-o e prossiga com a instalação. Uma vez concluída a instalação, você pode começar a usar a biblioteca IronXL em seu projeto.

A captura de tela a seguir mostra como abrir o Gerenciador de Pacotes NuGet no Visual Studio.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 4: Gerenciador de Pacotes NuGet Gerenciador de Pacotes NuGet

A captura de tela a seguir mostra o IronXL nos resultados de pesquisa:

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 5: Resultado da pesquisa IronXL Resultado da pesquisa do IronXL

4.2 Usando a linha de comando do Visual Studio

Muitos desenvolvedores preferem instalar pacotes usando uma interface de linha de comando. Para instalar o IronXL usando a linha de comando, siga estas etapas:

  • No Visual Studio, vá para Ferramentas > Gerenciador de Pacotes NuGet > Console do Gerenciador de Pacotes.
  • Insira a seguinte linha na aba do Console do Gerenciador de Pacotes:

    Install-Package IronXL
    Install-Package IronXL
    SHELL

O pacote será baixado e instalado no projeto atual.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 6: Instalando via linha de comando Instalando via linha de comando

5. Instalando e Configurando o Banco de Dados SQL Server

Para instalar e integrar a tabela do banco de dados SQL server com seu projeto em C#, primeiro, vá ao Gerenciador de Pacotes NuGet, busque por System.Data.SqlClient, e instale-o.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 7: Pesquisar e instalar SqlClient na interface do Gerenciador de Pacotes NuGet Pesquise e instale SqlClient na interface do Gerenciador de Pacotes NuGet

Depois de instalado, vá ao menu do projeto e clique em "Adicionar Novo Item".

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 8: Adicionar Novo Item Adicionar Novo Item

Uma nova janela será aberta. Selecione dados no menu lateral e clique em Banco de Dados Baseado em Serviço na lista. Escreva um nome apropriado para o banco de dados e clique no botão Adicionar.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 9: Selecionar Banco de Dados baseado em Serviço Selecione Banco de Dados Baseado em Serviço

Em seguida, no Solution Explorer, clique com o botão direito no banco de dados recém-criado e selecione "Abrir". Isso abrirá uma nova barra lateral.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 10: Clique com o botão direito e selecione Abrir Clique com o botão direito e selecione Abrir

Na nova barra lateral, clique no seu banco de dados e vá para suas propriedades. De lá, copie a string de conexão.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 11: Clique com o botão direito e selecione Propriedades Clique com o botão direito e selecione Propriedades

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 12: Manipular String de Conexão Manipular String de Conexão

Após copiar as preferências de conexão, clique em sua instância de banco de dados para abrir uma nova lista. Clique com o botão direito na pasta de tabelas e selecione "Adicionar Nova Tabela".

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 13: Adicionar Nova Tabela Adicionar Nova Tabela

Para criar uma nova tabela no banco de dados, siga estes passos:

  1. Abra uma nova página de design de tabela de dados.
  2. Adicione a seguinte Consulta SQL, que criará uma nova tabela com três colunas: Id, Name e Number.
  3. Clique no botão "Atualizar" no topo da página.
  4. A tabela recém-gerada será adicionada ao banco de dados.
CREATE TABLE [dbo].[Table]
(
  [Id] INT NOT NULL PRIMARY KEY,
  [Name] VARCHAR(100) NOT NULL,
  [Number] INT
)

Agora que o ambiente SQL está configurado, vamos criar alguns dados de exemplo para preencher este banco de dados a partir dos dados do Excel.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 14: Dados do arquivo Excel Dados do arquivo Excel

6. Importar Dados do Arquivo Excel e Exportar para um Banco de Dados usando IronXL

Com o IronXL, os desenvolvedores podem automatizar o processo de transferência de dados entre arquivos Excel e bancos de dados, o que pode economizar uma quantidade significativa de tempo e esforço. Utilizando o IronXL, os desenvolvedores podem agilizar seu fluxo de trabalho e eliminar a necessidade de entrada manual de dados, garantindo que os dados sejam precisos e atualizados.

Uma vez configurado o servidor SQL e copiada a string de conexão, basta colar a string de conexão no código abaixo, vincular seu arquivo Excel com o código e alterar a consulta SQL se necessário. Em seguida, execute o código e os dados serão exportados para a tabela do banco de dados.

using IronXL; // Import the IronXL library
using System.Data; // Import data handling library
using System.Data.SqlClient; // Import SQL Client library for SQL database operations

// Load the Excel workbook
WorkBook workBook = WorkBook.Load("book.xlsx");

// Convert the workbook into a DataSet
DataSet dataSet = workBook.ToDataSet();

// Define the SQL query to select data from the table
string sql = "SELECT * FROM [dbo].[Table]";

// Connection string for the SQL Server
string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True"; 

// Open a connection to the SQL Server using the connection string
using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open(); // Open connection
    // Use SqlDataAdapter to update SQL table with DataSet from Excel file
    SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
    adapter.Update(dataSet);
}
using IronXL; // Import the IronXL library
using System.Data; // Import data handling library
using System.Data.SqlClient; // Import SQL Client library for SQL database operations

// Load the Excel workbook
WorkBook workBook = WorkBook.Load("book.xlsx");

// Convert the workbook into a DataSet
DataSet dataSet = workBook.ToDataSet();

// Define the SQL query to select data from the table
string sql = "SELECT * FROM [dbo].[Table]";

// Connection string for the SQL Server
string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\USERS\BUTTW\SOURCE\REPOS\CREATE PDF\CREATE PDF\DATABASE1.MDF;Integrated Security=True"; 

// Open a connection to the SQL Server using the connection string
using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open(); // Open connection
    // Use SqlDataAdapter to update SQL table with DataSet from Excel file
    SqlDataAdapter adapter = new SqlDataAdapter(sql, connection);
    adapter.Update(dataSet);
}
$vbLabelText   $csharpLabel

Para verificar se os dados foram exportados com sucesso para o banco de dados, clique com o botão direito no diretório da tabela novamente e clique em "Nova Consulta". Uma nova página será aberta, selecione seu banco de dados na barra superior e execute a consulta SQL apropriada para recuperar os dados.

SELECT * FROM [dbo].[Table]

Pressione o botão verde, e o resultado será exibido em um segundo.

Como Ler Dados do Excel e Inserir na Tabela do Banco de Dados em C#, Figura 15: Dados do banco de dados Dados do Banco de Dados

É assim que você pode escrever dados importados de um arquivo Microsoft Excel para um banco de dados.

7. Conclusão

Trabalhar com planilhas do Excel é uma tarefa comum em muitas aplicações, e inserir dados de uma planilha Excel em uma tabela de banco de dados pode agilizar os processos de gerenciamento de dados. Uma maneira de realizar essa tarefa em C# é usando bibliotecas que permitem ler e manipular arquivos Excel, como IronXL. Utilizando esta biblioteca, os desenvolvedores podem facilmente extrair dados de uma planilha Excel e inseri-los em uma tabela de banco de dados, simplificando o processo de gerenciamento de dados e reduzindo as chances de erros. Este artigo cobre os passos envolvidos na adição de dados de um arquivo Excel a uma tabela do SQL Server em um banco de dados SQL Server usando a biblioteca IronXL. Também oferece uma breve introdução à biblioteca IronXL, discute os pré-requisitos necessários para inserir dados e descreve como criar um novo projeto no Visual Studio, instalar IronXL e configurar um banco de dados SQL Server. Por favor, visite o seguinte tutorial para aprender como ler arquivos Excel em C#.

Além disso, o IronXL também oferece recursos avançados incluindo suporte para formatação de células, como alinhamento de texto, tamanho da fonte, cor, painel de congelamento, adição de fórmulas, aplicação de formatação condicional e criptografia com uma senha.

Os usuários também podem se beneficiar da Iron Suite, uma coleção de ferramentas de desenvolvimento de software que inclui IronPDF, IronOCR, IronXL, IronBarcode e IronWebscraper.

Perguntas frequentes

Como posso ler dados de um arquivo Excel usando C#?

Você pode usar o IronXL para ler dados de um arquivo Excel em C#. O IronXL fornece métodos para abrir e ler arquivos Excel, permitindo que você acesse e manipule dados programaticamente.

Quais são os passos para inserir dados do Excel em um banco de dados SQL em C#?

Para inserir dados do Excel em um banco de dados SQL usando C#, primeiro leia os dados com o IronXL e converta-os em um DataSet. Em seguida, use SqlDataAdapter para atualizar a tabela do banco de dados SQL com o DataSet.

Como faço para criar uma nova tabela de banco de dados para importar dados do Excel?

Você pode criar uma nova tabela de banco de dados executando uma consulta SQL como CREATE TABLE [dbo].[Table] ( [Id] INT NOT NULL PRIMARY KEY, [Name] VARCHAR(100) NOT NULL, [Number] INT ) para definir a estrutura da tabela.

Quais são os pré-requisitos para usar o IronXL em um projeto C#?

Os pré-requisitos incluem ter o Visual Studio instalado, a biblioteca IronXL do NuGet Package Manager e o SQL Server configurado no seu ambiente Visual Studio.

Como posso verificar se os dados do Excel foram inseridos com sucesso em um banco de dados?

Você pode verificar a inserção de dados executando uma consulta SQL como SELECT * FROM [dbo].[Table] para buscar e revisar as entradas de dados no banco de dados SQL Server.

Quais são alguns dos recursos avançados oferecidos pelo IronXL?

O IronXL oferece recursos avançados como criação de gráficos, visualização de dados, formatação de células, congelamento de painéis, adição de fórmulas, formatação condicional e criptografia com senha.

Como posso instalar o IronXL no meu projeto do Visual Studio?

Você pode instalar o IronXL em seu projeto do Visual Studio usando o Gerenciador de Pacotes NuGet para pesquisar e instalar o IronXL, ou executando Install-Package IronXL na linha de comando do Visual Studio.

Por que devo usar o IronXL para transferência de dados entre bancos de dados Excel e SQL?

Utilizar o IronXL para transferência de dados entre bancos de dados Excel e SQL automatiza o processo, garantindo a precisão dos dados e economizando tempo, ao mesmo tempo que mantém as informações atualizadas.

Jordi Bardia
Engenheiro de Software
Jordi é extremamente proficiente em Python, C# e C++, e quando não está utilizando suas habilidades na Iron Software, dedica-se à programação de jogos. Compartilhando as responsabilidades por testes, desenvolvimento e pesquisa de produtos, Jordi agrega imenso valor à melhoria contínua dos produtos. Essa experiência diversificada o mantém ...
Leia mais

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me