Сначала поймите, что вы заново изобретаете колесо здесь. Существует несколько приличных библиотек объектно-реляционного отображения для доступа к базам данных практически на каждом языке. Для C / C ++ вы можете посмотреть:
http://trac.butterfat.net/public/StactiveRecord
http://debea.net/trac
Хорошо, с этим, возможно, вы захотите создать статический метод в вашем классе, который называется find или search, который является фабрикой для построения объектов и выбора их из базы данных:
Artist MJ = Artist::Find("Michael Jackson");
MJ->set("relevant", "no");
MJ->save();
Обратите внимание на метод save, который затем берет измененный объект и сохраняет его обратно в базу данных. Если вы действительно хотите создать новую запись, вы должны использовать метод new
, который будет создавать пустой объект:
Artist StackOverflow = Artist->new();
StackOverflow->set("relevant", "yes");
StackOverflow->save();
Обратите внимание, что методы set и get здесь просто устанавливают и получают значения из объекта, а не из базы данных. Для фактического хранения элементов в базе данных вам необходимо использовать статический метод Find
или метод save
объекта.