Funções PosgreSQL - func_pg
Publicado por Perfil removido 06/08/2007
[ Hits: 4.596 ]
Este é um fonte de funções de conexão, seleção e atualização em postgresql, com consistências de erro.
Ele usa uma função ast_log(), que foi escrita por mim e está publicada aqui sob o nome logger.
#include <string.h> #include <stdlib.h> #include <libpq-fe.h> PGconn * db_conn(PGconn *con) { char msg[1024]; char host[128],dbname[128],user[128],password[128]; char con_param[256]; read_pg_conf(host,dbname,user,password,"/usr/local/etc/agi3.conf{FONTE}"); sprintf(con_param,"host=%s dbname=%s user=%s password=%s",host,dbname,user,password); con=PQconnectdb(con_param); if(PQstatus(con)!=CONNECTION_OK) { sprintf(msg,"func_pg.c: Error connection: %s\n",PQerrorMessage(con)); agi_log(LOG_ERROR,msg); exit(1); } else return con; } PGresult * db_query(PGconn *con,char query[128]) { char msg[1024]; PGresult *res; res=PQexec(con,query); if(PQresultStatus(res)!=PGRES_TUPLES_OK) { sprintf(msg,"func_pg.c: Query failed! %s",PQerrorMessage(con)); agi_log(LOG_ERROR,msg); PQclear(res); PQfinish(con); exit(1); } else return res; } void db_update(PGconn *con,char query[128]) { char msg[1024]; PGresult *res; res=PQexec(con,query); if(PQresultStatus(res)!=PGRES_COMMAND_OK) { printf(msg,"func_pg.c: Error with update!\n"); agi_log(LOG_ERROR,msg); } }
Usando MySQL na linguagem C - Exemplo 2
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Browser/Placa de vídeo trava Ubuntu 22.04 (0)
Salvar estado da VM no virt-manager [RESOLVIDO] (5)