Практика PostgreSQL с C в Visual Studio

Я хотел бы попрактиковаться и подготовиться к использованию серверной базы данных PostgreSQL для предстоящего школьного задания. Назначение потребует от меня написания программ на C, которые могут выполнять различные запросы, а также проверять их правильность и т. Д.

Я не могу найти в Интернете какого-либо определенного руководства по настройке PostgreSQL с Visual Studio и C. Я понимаю, что мне нужно использовать libpq-fe заголовочный файл, но когда я загружаю его из PostgreSQL а также #include это, я все еще получаю ошибки связывания и больше. Это беспорядок.

Может ли кто-нибудь направить меня (и будущих пользователей с этой проблемой) через процесс ее настройки?

2 ответа

Вы не можете просто скачать libpq-fe.h и ожидайте использовать его без чего-либо еще.

Вы должны использовать libpq - включить хотя бы libpq-fe.h, ссылка на libpq.lib и убедитесь, что libpq.dll присутствует в пути выполнения программы. В Visual Studio это означает редактирование пути включения и пути к библиотеке, а затем добавление libpq в список компоновщиков.

Обычно я делаю сборку исходного кода PostgreSQL, когда работаю с libpq, но я почти уверен, что библиотека и заголовки также включены в бинарную установку. Проверьте каталог установки.

Прежде всего вам необходимо прочитать это: http://pqxx.org/development/libpqxx/browser/trunk/win32/INSTALL.txt

Это расскажет вам, как установить или собрать libpq на вашем компьютере.

Лично я просто устанавливаю PostgreSQL для Windows с официального сайта PostgreSQL.

Это должно избежать необходимости сборки libpq.

Теперь, когда у вас есть все необходимые файлы libpq.lib, libpq-fe.h, libpq.dll и т. Д... Вы должны правильно настроить страницу свойств вашего проекта VS, т. Е. Сделать точно так, как указано в INSTALL.TXT

После того, как страницы свойств установлены правильно, добавьте:

#include <string> 
#include "libpq-fe.h"
#pragma comment(lib, "libpq.lib")

Для получения дополнительной информации прочитайте это руководство: http://www.askyb.com/cpp/c-postgresql-example/

Другие вопросы по тегам