Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kiruhin
0 / 0 / 0
Регистрация: 01.04.2013
Сообщений: 6
#1

Высвобождения ресурсов БД (PostgreSQL) - C++

19.09.2013, 17:07. Просмотров 249. Ответов 1
Метки нет (Все метки)

Добрый день.
Вопрос, конечно, из разряда "для начинающих", так что сильно не бейте Есть некая функция, которая работает с базой данных (PostgreSQL). Есть небольшой момент по поводу высвобождения ресурса после окончания работы функции. Как лучше сделать из двух нижеприведенных вариантов?

Вариант 1:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
int some_func {
    sprintf(sql_query, "SELECT * FROM forum");
    sql_query_result = PQexec(conn, sql_query);
    PQclear(sql_query_result);
    ...........
    ...........
    sprintf(sql_query, "SELECT * FROM news");
    sql_query_result = PQexec(conn, sql_query);
    PQclear(sql_query_result);
    ...........
    ...........
    return 0;
}
Вариант 2:
C
1
2
3
4
5
6
7
8
9
10
11
12
int some_func {
    sprintf(sql_query, "SELECT * FROM forum");
    sql_query_result = PQexec(conn, sql_query);
    ...........
    ...........
    sprintf(sql_query, "SELECT * FROM news");
    sql_query_result = PQexec(conn, sql_query);
    ...........
    ...........
    PQclear(sql_query_result);
    return 0;
}
Т.е. лучше вызывать PQclear() после КАЖДОГО запроса к БД (вариант 1) или достаточно вызвать PQclear() в самом конце функции (вариант 2)? Естественно, преследуется цель избежать утечки памяти.
Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.09.2013, 17:07
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Высвобождения ресурсов БД (PostgreSQL) (C++):

метод высвобождения ресурсов - C# MVC
есть код public FileResult NzpPribreport() { var priblist = (IEnumerable<NzpPribList>)TempData; ...

PostgreSQL 9.4.10 1с - PostgreSQL
Крутится 15 БД 1с Винты баракуды в 10 Пользователей немного порядка 20 Базы занимают порядка 300 гб. Возможно ли разнести БД на...

С++ и PostgreSQL - C++ Linux
Всем доброго времени суток! Прошу помочь разобраться. Есть два сервера на FreeBSD 8.2, на 1-ом крутится БД PostgreSQL, а на втором...

C# и PostGresql - C#
Привет всем, вобщем я пока еще новичок в этом деле и только начинаю изучать пространства имен. Так вот, как можно узнать количество записей...

PostgreSQL - PostgreSQL
Здраствуйте. Работаю на одной из фирм , програмистом. Тока начинают. Програмирую на Линуксе. Так вот дали задание сотворить програмку с...

PostgreSQL - C++ Qt
доброго времени суток, решил сдружить Qt и PostgreSQL (4.8.0 и 8.4 соответственно) OS: Win7. столкнулся с таким вот забавным случаем, когда...

1
castaway
Эксперт С++
4885 / 3020 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
19.09.2013, 17:14 #2
Первый вариант является правильным.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.09.2013, 17:14
Привет! Вот еще темы с ответами:

Qt + PostgreSQL - C++ Qt
Здравствуйте!Я опять с вопросом, никак не могу разобраться.Нашла урок по Qt (http://symmetrica.net/qt4/lesson1.htm) в котором работают с...

Ruby vs Postgresql - Ruby on Rails
Можете посоветовать в каких книгах о Rails будет рассказываться взаимодействие Ruby с Postgresql.

БД в СУБД PostgreSQL (в c#) - C#
Я хочу создать БД в СУБД PostgreSQL и работать с ней из-под C# приложения. Как мне прикрутить БД в C# если Пострес создаёт БД в виде 129...

Коннектор к PostgreSQL - C#
Существует ли сабж. Именно для появления в server explorer


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru