sql >> Database >  >> RDS >> PostgreSQL

Postgresql-connectoren met VC++

Aangezien dit mijn eerste bijdrage is, zal ik de tijd nemen om dit te beantwoorden, ongeacht de beperkte informatie die door Raveendra konda wordt verstrekt. Misschien is het nuttig voor iemand die nieuw is bij libpqxx.

Op het moment van schrijven zijn we op libpqxx 7.0.7. Ik zal één oplossing bieden om libpqxx 7.0.7 te bouwen en ervan uit te gaan dat u Windows 10 met Visual C++ 2019 gebruikt.

Stap 1

Als je niet bekend bent met CMake, raad ik je aan er meteen vrienden mee te worden. Ga hierheen en download en installeer CMake:

https://github .com/Kitware/CMake/releases/download/v3.17.2/cmake-3.17.2-win64-x64.zip

stackoverflow en youtube zijn geweldige plaatsen om CMake te onderschatten, een andere bron:

https://cmake.org/cmake/help/latest/guide /tutorial/index.html

Als alternatief kunt u libpqxx installeren via vcpkg, maar op het moment van schrijven is alleen versie 6.4 beschikbaar.

Stap 2

Volg de instructies hier om de libpqxx-bibliotheek te bouwen:

https://github.com/jtv/libpqxx/blob/master /INSTALL-Windows.md

Besteed speciale aandacht aan de auteur die aanbeveelt om libpqxx te bouwen als een statische bibliotheek voor Windows.

Ik neem aan dat je de libpqxx-bibliotheek hebt gebouwd en toegang hebt tot pqxx.lib, libpq.lib-bestanden en libpqxx-bronbestanden. Het libpq.lib-bestand bevindt zich meestal in uw PostgreSQL-installatiemap:C:\Program Files\PostgreSQL\12\lib.

Stap 3

Ik neem aan dat je een project gereed hebt in VC++2019. Doe dit:

Projecteigenschappen -> VC ++ Directory's -> Inclusief mappen -> (voeg inclusief pad in voor de libpqxx-bronbestanden)

Projecteigenschappen -> VC ++ Directory's -> Bibliotheekdirectory's -> (voeg inclusief pad in voor zowel pqxx.lib- als libpq.lib-bestanden)

Projecteigenschappen -> C/C ++ -> Extra mappen opnemen -> (voeg inclusief pad in voor libpqxx-bronbestanden)

Projecteigenschappen -> Linker -> Algemeen -> (voeg pad toe voor zowel pqxx.lib- als libpq.lib-bestanden)

Projecteigenschappen -> Linker -> Invoer -> (kopiëren en plakken -> pqxx.lib libpq.lib Ws2_32.lib)

Het Ws2_32.lib-bestand kan de stille moordenaar zijn voor niet-ingewijden in deze hele vergelijking.

Stap 4

Ik neem aan dat je een tabel hebt ingesteld in PostgreSQL. Ga hierheen om te testen:

https://libpqxx.readthedocs.io/en/7.0.7/a01329 .html



  1. Hoe een MySQL-query te schrijven waarbij A (a of b) bevat

  2. Voorwaardelijke lead/lag-functie PostgreSQL?

  3. MySQL met Node.js

  4. Een gebruiker ingelogd houden met nodeJS