
Banco de Dados em C/C# para Projetos de Aprendizado
Introdução:
Neste tutorial, mostramos como desenvolver um banco de dados simples para uma aplicação em linguagem C/C#. Este exemplo é ideal para estudantes ou desenvolvedores iniciantes que desejam integrar uma estrutura básica de dados ao seu projeto. Apresentamos o código completo e explicações de cada etapa.
Exemplo de código prático para banco de dados simples
#include <string.h>
#include <stdio.h>
#include <time.h>
#include "UMBR_bd.h"
// Defina o sistema operacional
#define PU_SO linux
//#define PU_SO windows
int main() {
int LO_Con;
// Limpa a tela
#if( PU_SO == linux )
system("clear");
#else
system("cls");
#endif
// Criando estrutura do banco
BD_ADNuInt("Codigo", "Codigo");
BD_ADTexto("Nome", 60, "Nome");
BD_ADNuDec("Valor", "");
BD_ADConfi("TabeladoSN", "");
BD_Criar("Produtos.bd");
if (BD_Erro()) {
printf("%s\n", BD_ErroMsg());
return -1;
}
// Inserindo dados
BD_Abrir("Produtos.bd", "Produtos");
BD_NovoReg();
BD_GravaNuInt("Codigo", 2);
BD_GravaTexto("Nome", "Produto 1");
BD_GravaNuDec("Valor", 1.99);
BD_GravaConfi("TabeladoSN", 'S');
BD_NovoReg();
BD_GravaNuInt("Codigo", 3);
BD_GravaTexto("Nome", "Produto 4");
BD_GravaNuDec("Valor", 2.99);
BD_GravaConfi("TabeladoSN", 'S');
BD_NovoReg();
BD_GravaNuInt("Codigo", 4);
BD_GravaTexto("Nome", "Produto 3");
BD_GravaNuDec("Valor", 3.99);
BD_GravaConfi("TabeladoSN", 'N');
BD_NovoReg();
BD_GravaNuInt("Codigo", 1);
BD_GravaTexto("Nome", "Produto 2");
BD_GravaNuDec("Valor", 4.99);
BD_GravaConfi("TabeladoSN", 'N');
if (BD_Erro()) {
printf("%s\n", BD_ErroMsg());
return -1;
}
BD_Fechar();
// Leitura dos dados
BD_Abrir("Produtos.bd", "Produtos");
BD_SelecionaIN("Nome");
BD_IrParaInicio();
long int LO_Codigo;
char LO_Nome[60];
double LO_Valor;
char LO_TabeladoSN;
unsigned long int LO_TotalReg = BD_TotalReg();
printf("\nTotal de registros: %lu\n\n", LO_TotalReg);
for (LO_Con = 0; LO_Con < LO_TotalReg; LO_Con++) {
LO_Codigo = BD_LerNuInt("Codigo");
BD_LerTexto("Nome", LO_Nome);
LO_Valor = BD_LerNuDec("Valor");
LO_TabeladoSN = BD_LerConfi("TabeladoSN");
printf("Código: %3ld Nome: %s Valor: %9.2f Tabelado (S/N): %c\n",
LO_Codigo, LO_Nome, LO_Valor, LO_TabeladoSN);
BD_IrParaProximoReg();
if (BD_Erro()) {
printf("%s\n", BD_ErroMsg());
break;
}
}
BD_Fechar();
printf("Fim...\n");
return 0;
}
Explicação detalhada do funcionamento do código
O código cria e gerencia um banco de dados simples utilizando funções como BD_ADNuInt
, BD_ADTexto
, BD_ADNuDec
e BD_ADConfi
para definir a estrutura dos dados. Em seguida, usa BD_GravaNuInt
, BD_GravaTexto
, BD_GravaNuDec
e BD_GravaConfi
para preencher os registros.
O banco é salvo em um arquivo local chamado Produtos.bd
e pode ser reaberto para leitura, ordenação e exibição dos dados. Isso é ideal para projetos didáticos, aplicações internas ou protótipos de software comercial com foco em produtos simples.
Recomendações e avisos importantes
- Este projeto é indicado para ambientes educacionais e protótipos.
- Para uso profissional, considere bases como SQLite, MySQL ou PostgreSQL.
- Armazene o banco em locais seguros e evite manipulações manuais no arquivo .bd.
Softwares, wallets e ferramentas compatíveis
- Recomenda-se o uso de editores como Visual Studio Code ou Eclipse IDE.
- Para compilação no Linux, utilize
gcc
com suporte à biblioteca utilizada. - Recomenda-se salvar backups do banco regularmente.
Aviso: Este conteúdo é educacional. Caso utilize em aplicações reais, revise o código e faça auditoria de segurança. Nenhuma garantia de funcionamento comercial é fornecida.
Esperamos que esse exemplo tenha sido útil. Continue acompanhando os tutoriais técnicos no @CanalQb.