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

Загрузка данных из БД. Как лучше реализовать работу со связанными данными - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Rand() в Win 7 64 bit. Выводится одна и та же последовательность чисел http://www.cyberforum.ru/cpp-beginners/thread1063258.html
Постоянно выводит одну и туже последовательность чисел. Что не так? Есть мнение, что под Win 7 64 bit эта команда не работает (rand). Может ли быть в этом причина? Если да, как это обойти? //--------------------------------------------------------------------------- #include <vcl.h> #include <stdio.h> #include <conio.h> #pragma hdrstop
C++ Найти площадь пятиугольника (определить функцию для расчёта площади треугольника по трём сторонам) даны вещественные числа a.b.c.d.e Найти площадь пятиугольника ,(определить функцию для расчёта площади треугольника по трём сторонам) в задании картинка пятиугольника http://www.cyberforum.ru/attachments/342600d1387131977 http://www.cyberforum.ru/cpp-beginners/thread1063246.html
Сортировка C++
Метод пузырька for (int i = 0; i < 10-1; i++) { if (a>a) { x=a; a=a; a=x; } }
C++ Приложения какой разрядности будут компилироваться в зависимости от ОС, на которой происходит компиляция
Купил я, значит, себе ноутбук, и у меня возник вопрос: Если я использую платформу решения x64, то создается приложение, которое идет только на x64? И если я использую x32 - создается x32? Я прав? как правильно? Что эти "платформы решения" дают??:) Да, еще один вопрос : при компиляции мне все время говорит VS "Проект устарел". Что это значит?
C++ Strcpy(), классы, линейные списки и функции. Стала появляться ошибка после использования классов http://www.cyberforum.ru/cpp-beginners/thread1063239.html
Вот код: #include <iostream> #include <fstream> #include <string> #include <string.h> #include <Windows.h> using namespace std; extern class Subscriber; struct Book
C++ STL STACK как с ним работать? задача такова: 1. Создать объект-контейнер в соответствии с вариантом задания и заполнить его данными, тип которых определяется вариантом задания. 2. Просмотреть контейнер. 3. Изменить контейнер, удалив из него одни элементы и заменив другие. 4. Просмотреть контейнер, используя для доступа к его элементам итераторы. 5. Создать второй контейнер этого же класса и заполнить его данными того же... подробнее

Показать сообщение отдельно
sentike
4 / 4 / 0
Регистрация: 22.08.2013
Сообщений: 49

Загрузка данных из БД. Как лучше реализовать работу со связанными данными - C++

05.01.2014, 00:58. Просмотров 231. Ответов 0
Метки (Все метки)

И так здравствуйте, у меня есть вопрос, как лучше реализовать работу со связанными данными, т.е у нас есть основная структура и более 10 дочерних.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
struct sProperty
{
int db;
int type;
int property
} 
 
struct sHouse
{
int db;
int style;
}
 
struct sBank
{
int db;
int style;
int perOne;
//.............
}
На данный момент происходит загрузка данных таким образом:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void cBanks::load()
{
    safe_query(con, "SELECT class_Property.*, class_Banks.*, getOwnerName(class_Property.owner) as pname FROM class_Property, class_Banks  WHERE class_Property.property = class_Banks.db AND class_Property.type = 2");
    while (( row = mysql_fetch_row(result) ))
    {
//------------ шаблонный код--------
        Property[ countProperty ].db = atoi(row[ 0 ]);
        Property[ countProperty ].type = atoi(row[ 1 ]);
        Property[ countProperty ].property = atoi(row[ 2 ]);
        //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Bank[ countBanks ].db = atoi(row[ 3 ]);
        Bank[ countBanks ].style= atoi(row[ 4 ]);
        Bank[ countBanks ].perOne= atof(row[ 5 ]);
    }
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void cHouse::load()
{
    safe_query(con, "SELECT class_Property.*, class_Houses.*, getOwnerName(class_Property.owner) as pname FROM class_Property, class_Houses  WHERE class_Property.property = class_Houses.db AND class_Property.type = 2");
    while (( row = mysql_fetch_row(result) ))
    {
//------------ шаблонный код--------
        Property[ countProperty ].db = atoi(row[ 0 ]);
        Property[ countProperty ].type = atoi(row[ 1 ]);
        Property[ countProperty ].property = atoi(row[ 2 ]);
        //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        House[ countHouse ].db = atoi(row[ 3 ]);
        House[ countHouse ].style = atoi(row[ 4 ]);
    }
}
Как можно было бы оптимизировать загрузку и сократить тонну "шаблонного кода" ?
Заранее спасибо, с ув. Дмитрий.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru