Descubra como emitir os comandos SQL mais comuns usando VB.NET.

VB.NET oferece uma abordagem simplificada para operações de banco de dados, com uma estrutura robusta. Usando seu poder, você pode obter informações relevantes rapidamente e com o mínimo esforço.

Dê uma olhada em alguns exemplos práticos que mostram como usar VB.NET para realizar consultas SQL e veja como você pode garantir que a recuperação de dados seja eficaz e eficiente.

Configurando seu SQL Server local

Comece configurando um servidor SQL para revisar tudo passo a passo. Nos exemplos abaixo você verá um ambiente Windows, mas se estiver usando um sistema operacional diferente como Linux e tiver um servidor SQL diferente, não se preocupe; a lógica geral permanecerá a mesma.

Devido à sua simplicidade e abordagem de configuração zero, SQLite é uma excelente escolha para iniciantes.

Para configurar as coisas, crie uma nova pasta e abra um prompt de comando e navegue até ele. Execute o seguinte comando para criar um novo projeto .NET no qual você possa usar a linguagem VB.NET:

instagram viewer
dotnet new console -lang VB -o MyVBApp

Agora você tem um projeto chamado MeuVBApp. Continue a configuração integrando o pacote SQLite ao seu projeto VB.NET usando NuGet, um gerenciador de pacotes popular para .NET. Execute este comando:

dotnet add package System.Data.SQLite

Depois de adicionar o SQLite, você pode configurar um banco de dados local sem esforço.

Você pode encontrar todo o código desses exemplos no arquivo do projeto Repositório GitHub.

Faça o download do InicializarDatabase.vb arquivo do repositório do projeto. Este arquivo específico irá ajudá-lo a configurar seu banco de dados. Como você pode ver neste arquivo existem alguns usuários e os países dos usuários. Você pode usar isso como um banco de dados de amostra.

O comando que você usou para criar o projeto VB.NET criou um arquivo chamado Programa.vb. Abra este arquivo e atualize-o da seguinte forma:

Module Program
Sub Main(args AsString())
DatabaseInitializer.InitializeDb()
EndSub
EndModule

Execute este programa e você verá que ele cria um arquivo chamado meu banco de dados.db. Este é o banco de dados simples que você usará nos exemplos a seguir.

Estabelecendo uma conexão de banco de dados com SQL em VB.NET

Estabelecer uma conexão usando SQLite em VB.NET é simples. Continue editando o Programa.vb arquivo e remova o conteúdo existente da sub-rotina Main. Este arquivo serve como núcleo do projeto.

Você pode definir uma conexão com o arquivo de banco de dados, mydatabase.db, com esta linha de código:

Dim connectionString AsString = "Data Source=mydatabase.db; Version=3;"

Fonte de dados especifica o nome do arquivo do banco de dados. Se o arquivo não existir, o SQLite criará um novo banco de dados ao estabelecer uma conexão.

O próximo passo é usar o Conexão SQLite classe para criar uma instância de conexão. Você deve sempre usar um Usando bloquear ao trabalhar com conexões de banco de dados para evitar possíveis vazamentos ou conflitos:

Using conn AsNew SQLiteConnection(connectionString)
conn.Open()

' Database operations go here
EndUsing

O bloco Using garante que a conexão seja fechada automaticamente quando for concluída.

Seu arquivo Program.vb final deve ser parecido com isto:

Imports System
Imports System.Data.SQLite

Module Program
Sub Main(args AsString())
Dim connectionString AsString = "Data Source=mydatabase.db; Version=3;"

Try
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()
Console.WriteLine("Successfully connected to the database!")

'You can perform database operations here.
EndUsing
Catch ex As SQLiteException
Console.WriteLine("Error: " & ex.Message)
EndTry
EndSub
EndModule

Este código se conectará ao banco de dados mydatabase.db e imprimirá uma mensagem de confirmação quando for bem-sucedido. Se ocorrer um erro, os detalhes serão impressos no console.

Como buscar dados e carregá-los em um array

O SELECIONARComando SQL é a principal forma de buscar dados de um banco de dados SQL. Se você tiver uma tabela chamada Usuários em seu banco de dados e você deseja obter o Nome campo de cada registro dessa tabela, use SELECT assim:

SELECT Name FROM Users

Você pode extrair dados do banco de dados e carregá-los em um array adicionando esta consulta ao arquivo Program.vb:

Dim query AsString = "SELECT Name FROM Users"
Dim names AsNew List(OfString)()

Using conn AsNew SQLiteConnection(connectionString)
conn.Open()

Using cmd AsNew SQLiteCommand(query, conn)
Using reader As SQLiteDataReader = cmd.ExecuteReader()
While reader.Read()
names.Add(reader("Name").ToString())
EndWhile
EndUsing
EndUsing
EndUsing

' Now the 'names' list is full of users' names.
' You can convert this list to an array if you want:
Dim namesArray() AsString = names.ToArray()

' Print array content for testing purposes
ForEach name In namesArray
Console.WriteLine(name)
Next

Você verá uma lista de nomes no console, correspondendo ao conteúdo da tabela do seu banco de dados:

Este código carrega os dados em um Lista estrutura - que tem um tamanho dinâmico - antes de convertê-la em um array após a conclusão. Essa abordagem é muito útil para situações em que você não sabe antecipadamente o número de registros que irá recuperar.

Como usar INSERT para adicionar dados a um banco de dados

Você pode usar o INSIRA DENTRO DE comando para adicionar novos dados a um banco de dados. Por exemplo, considere o Usuários tabela que possui duas colunas nomeadas Nome e País.

A consulta SQL básica que você pode usar para adicionar um novo usuário seria:

INSERT INTO Users (Name, Country) VALUES ('Fatih', 'TR')

Para adicionar um novo usuário ao banco de dados usando esta consulta, atualize o arquivo Program.vb da seguinte forma:

Dim query AsString = $"INSERT INTO Users (Name, Country) VALUES ('{name}', '{country}')"
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()

Using cmd AsNew SQLiteCommand(query, conn)
cmd.ExecuteNonQuery()
EndUsing
EndUsing

Console.WriteLine($"{name} has been successfully added to the database!")

Este exemplo simples usa interpolação de string para construir a consulta, mas você deve evitar isso no código de produção, pois é vulnerável à injeção de SQL. A alternativa são consultas parametrizadas que tornam as operações do banco de dados mais seguras e eficientes.

Consultas parametrizadas usam espaços reservados, em vez de concatenação direta de strings, para adicionar valores a consultas SQL. Essa abordagem o ajudará a evitar muitas ameaças à segurança:

Dim query AsString = "INSERT INTO Users (Name, Country) VALUES (@Name, @Country)"
'...
cmd.Parameters.AddWithValue("@Name", userName)
cmd.Parameters.AddWithValue("@Country", userCountry)

Quaisquer outras dicas para trabalhar com um banco de dados dentro do VB.Net

As operações de banco de dados em VB.NET podem inicialmente parecer assustadoras, mas com algumas orientações, você pode dominar facilmente o básico.

  • Use consultas parametrizadas para se proteger contra vulnerabilidades de segurança.
  • Sempre feche a conexão com o banco de dados quando terminar de buscar ou atualizar os dados.
  • Mantenha seu banco de dados para otimizar sua estrutura à medida que seu modelo de dados muda ao longo do tempo.
  • Não se esqueça de fazer cópias de segurança em caso de emergência.

Como acontece com qualquer tecnologia, os bancos de dados evoluem. O software é atualizado, surgem novas ferramentas e descobrimos maneiras melhores de fazer as coisas. É uma boa ideia manter-se informado e atualizado. Algumas ferramentas atuam como intermediárias, como Estrutura de entidade, tornando mais fácil escrever código relacionado ao banco de dados.

Como levar sua jornada VB.NET adiante

VB.NET, com sua conexão profundamente enraizada com o ecossistema Microsoft, é robusto e fácil de usar. Para realmente compreender seu poder, comece com a documentação oficial fornecida pela Microsoft. A partir daí, explore cursos, fóruns e comunidades on-line, onde desenvolvedores experientes compartilham seus conhecimentos e percepções.

Lembre-se de que todo especialista já foi iniciante. Com esforço consistente, curiosidade e os recursos certos, você logo navegará no VB.NET com confiança e facilidade. À medida que você avança, não hesite em experimentar, fazer perguntas e, o mais importante, aproveitar o processo de descoberta.