Como criar uma conexão do banco de dados PostgreSQL com a linguagem C

Introdução

O PostgreSQL é um poderoso banco de dados open source, relacional, com gerenciamento multiusuário e compatível com as plataformas Linux, FreeBSD, Solaris, Microsoft Windows e Mac OS X. Ele é utilizado em pequenas, médias e grandes aplicações de diferentes tipos de soluções. Por ele ser capaz de suportar o gerenciamento de dados de grandes sistemas, muitas IDEs (Integrated Development Environment) e ambientes de desenvolvimento já possuem métodos de comunicação com este banco.

Entretanto, hoje não é comum ver soluções desenvolvidas na linguagem C e integradas com o PostgreSQL. Aqui, vou demonstrar como é simples realizar a comunicação entre um programa escrito em C e uma base de dados criada no PostgreSQL.

 

Objetivo

Na internet e na documentação do PostgreSQL você vai encontrar muitos exemplos de programas em C que usam API para realizar a comunicação com o Postgres. Mas todos eles, por terem uma finalidade didática, deixam a implementação dessa comunicação na função main e processos como conectar, criar, selecionar ou fechar a conexão não são separados em funções, o que pode dificultar um pouco a implantação para quem tem menos experiência em C.

Organizar seu software em funções e, consequentemente em bibliotecas (ou classes), é o básico a se fazer para manter um código organizado, claro e de fácil manutenção, principalmente quando falamos de programação em C, já que se torna muito mais fácil de entender. Por isso, esse artigo tem o objetivo de mostrar como criar um pequeno programa em C (de forma estruturada) fazendo uso da include libpq para se comunicar com o PostgreSQL.

O ponto mais complicado nessa tarefa é criar estruturas que possam ser dimencionadas dinâmicamente e essa tarefa não tem como ser feita sem algum dominio na manipulação de ponteiros.

Continue reading “Como criar uma conexão do banco de dados PostgreSQL com a linguagem C”